読者です 読者をやめる 読者になる 読者になる

三流君 ken3のmemo置き場

メモ置き場、保管庫として利用。まとまっていませんがヨロシク



JRA IPATで情報を取得 7.3 単勝のオッズをカンマ区切りで出力してみた

目的のテーブルを
If objTABLE(n).Rows(0).Cells(0).InnerTEXT = "枠番" Then
で探すことができたので、
中のデータ(テキスト)を取り出し、カンマ区切りで出力してみます。

ポイントは、
.Rows.Length で 行数、
.Rows(y).Cells.Length で 列数
が取得できるので、単純にループで回してみました。

ソースを見た方が はやいですね キット。
実行結果 と ソースを見て、アレンジしてください。

実行結果 操作動画: http://www.youtube.com/watch?v=CfMnQEF09hk

ソース

'起動済みの IPAT情報メインメニュー を 探す

    'シェルのオブジェクトを作成する
    Set objShell = CreateObject("Shell.Application")

    Set objIE = Nothing    
    'ウインドウの数だけまわすぞ
    For Each objWindow In objShell.Windows
        'TypeNameでオブジェクト変数のタイプを表示する
        'HTMLDocumentだったら
        If TypeName(objWindow.document) = "HTMLDocument" Then
           'URLをチェックする(アドレスを探す)
           If InStr(objWindow.document.URL, "info.ipat.jra.go.jp/p/s") > 0 Then
               Set objIE = objWindow '見つけたウインドウを(IE)を代入
               Exit For   
           End IF
        End If
    Next
    Set objShell = Nothing

    '見つけたかチェック
    If objIE Is Nothing Then
        msgbox "エラー IPAT情報 オッズ画面が 見つかりません"
        wscript.quit
    End If   

'テーブルを抜き出す

    'TABLEのタグを集める .getElementsByTagName("TABLE")を使用
    Set objTABLE = objIE.Document.getElementsByTagName("TABLE")

    'Wscript.ECHO "TABLEのタグは " & objTABLE.Length & "個です。"  

    'ループで頭から 中身を表示してみる
    For n = 0 To objTABLE.Length - 1
        'Wscript.ECHO n & "番目 .id=" & objTABLE(n).id  '名前の確認
        'Wscript.ECHO objTABLE(n).Rows(0).Cells(0).InnerTEXT
        If objTABLE(n).Rows(0).Cells(0).InnerTEXT = "枠番" Then
            Exit For  'ループを抜ける
        End If
    Next

    '↑みつけたテーブルからデータを抜きます
    '↓.Lengthで行と列を取り出し、2重ループさせる
    For y = 0 To objTABLE(n).Rows.Length - 1  '行のループ
        strLINE = ""  '空の文字列で初期化
        For x = 0 To objTABLE(n).Rows(y).Cells.Length - 1  '列のループ
            '.InnerTextで中身の文字列を取り出し &でつなげ ,カンマを付ける
            strLINE = strLINE & objTABLE(n).Rows(y).Cells(x).InnerText & ","
        Next
        '作成した文字列(1行分↑)を出力する
        Wscript.ECHO strLINE    '一番後ろのゴミカンマは気にしない(ぉぃぉぃ)
    Next

実行
Cscript TEST.VBS > 結果.txt
などで、実行させてテストしてみてください。

JRA IPAT単勝オッズ取得 開発の流れ と 全体の流れ

JRA IPAT 単勝オッズの取り込み - 三流君ken3のひとりグループ
http://ken3hitori.g.hatena.ne.jp/bbs/30
↑の流れを見て、笑ってください・・・
JRA IPATを操作する他のサンプル・類似処理は、
JRA IPAT ログイン処理
JRA IPAT 入金処理 - 三流君ken3のひとりグループ
です。また、VBA IE操作の解説は
三流君VBAでIE操作 InternetExplorer.Applicationを操作する
で細々やっているので、よかったらお時間のある時にのぞきにきてください。