下記、蛇足の.getElementsByClassName解説が長かったり、、
JRA オッズ取得 時刻の取得 最終オッズの判断 VBA IE操作 Ken3 ライブ プログラミング テスト中 - YouTube
www.youtube.com
次は、
最終オッズ
や
99:99(XX時XX分)
などの、
オッズの集計時間を取得してみたいと思います。
1.現物の確認
レースが終了していると、
<td class="cTtl headerOdds"> 2017年7月30日(日) 2回新潟2日 <span class="headerOdds2">最終オッズ(馬番順)</span></td>
レース前は集計した時刻が表示されています。
<td class="cTtl headerOdds"> 2017年7月30日(日) 2回新潟2日 <span class="headerOdds2">14:13現在オッズ(馬番順)</span></td>
2.テキストを探して取得?
'HTMLのBODYテキストを代入
strTEMP = objIE.Document.body.innerText
で単純にテキストを代入して、
InStrで探しただけでした・・・
? instr(strtemp,"最終オッズ")
? instr(strtemp,"現在オッズ")
109
? mid(strtemp,instr(strtemp,"現在オッズ")-5,5)
14:21
Public Function JRA_Bodyからオッズの時刻を返す(objIE As InternetExplorer) As String Dim strTEMP As String Dim strRETURN As String 'リターン値 Dim n As Integer 'errでリターン値を初期化 strRETURN = "ERR 文字列が見つかりませんでした" 'HTMLのBODYテキストを代入 strTEMP = objIE.Document.body.innerText 'まず最終オッズを探す If InStr(strTEMP, "最終オッズ") > 0 Then strRETURN = "最終" End If 'XX現在を探す n = InStr(strTEMP, "現在オッズ") If n > 0 Then strRETURN = Mid(strTEMP, n - 5, 5) '時刻を取り出す End If 'リターン値をセット JRA_Bodyからオッズの時刻を返す = strRETURN End Function
3.蛇足 .getElementsByClassName ("Class文字列")をテスト
<td class="cTtl headerOdds"> 2017年7月30日(日) 2回新潟2日 <span class="headerOdds2">14:13現在オッズ(馬番順)</span></td>
に
td class="cTtl headerOdds"
や
span class="headerOdds2"
など、名前がついているので、
テストで、
.getElementsByClassName ("headerOdds2")
をテストしてみたり、、、
JRA オッズ取得 時刻の取得 最終オッズの判断 VBA IE操作 Ken3 ライブ プログラミング テスト中 - YouTube
www.youtube.com
※動画解説の後半を見て、笑ってください・・・・
何かの参考となれば・・・