vbaで乗換案内の料金を取得したいです
特定の条件のdlタグ配下にある、li class ="fare"の結果を取得したいです。
①getElementsByTagName("dl")をループで回して取得し、ルート1というテキストを検索
②①で見つかった場合、さらにgetElementsByTagName("li")で再度ループを回す
③getAttribute("className")="条件"で判定して料金を取得
③のgetAttributeがnullとなっているようで、条件分岐がスキップされてしまいます。
こちら、なにが原因でどこを直せば良いでしょうか?
助けてください。
発生している問題・エラーメッセージ
If dl_li.getAttribute("className") = "fare"の判定がされない。
該当のソースコード
VBA
1For Each dl In objIE.document.getElementsByTagName("dl") 2 If InStr(dl.innerText, "ルート1") > 0 Then 3 For Each dl_li In dl.getElementsByTagName("li") 4 If dl_li.getAttribute("className") = "fare" Then 5 '乗換案内のルート1の金額を取得する 6 ws.Cells(i, 10).Value = dl_li.innerText 7 End If 8 Next dl_li 9 End If 10 Next dl
html
1<dl> 2<dt><a href="#route01"><span class="icnAnchor">[↓]</span>ルート1</a></dt> 3<dd > 4<ul> 5<li class="time">20:49→<span class="mark">20:56</span><span class="small">7分</span></li> 6<li class="fare"><span class="mark">165円</span></li> 7<li class="transfer">乗換:<span class="mark">0回</span></li> 8<li class="priority"><span class="icnPriTime">[早]</span><span class="icnPriTrans">[楽]</span><span class="icnPriFare">[安]</span></li> 9 10</ul> 11</dd> 12</dl> 13 14--- 15<dl class="routeSummary"> 16<dt> 17<span class="label">ルート1</span> 18<ul class="priority"><li><span class="icnPriTime">[早]</span></li><li><span class="icnPriTrans">[楽]</span></li><li><span class="icnPriFare">[安]</span></li></ul> 19</dt> 20<dd> 21<ul><li class="time"><span>20:49発→<span class="mark">20:56着</span></span>7分(乗車7分)</li><li class="transfer">乗換:<span class="mark">0回</span></li> 22<li class="fare"><span class="icnIc">[priic]</span><span>IC優先:</span><span class="mark">165円</span></li> 23<li class="distance">4km</li> 24</ul> 25</dd>・・・・
試したこと
デバッグしてみたり、getElementsbyclassnameなど試みましたが、nullになります。
補足情報(FW/ツールのバージョンなど)
Windows10 Excel2013 VBA7.1

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/09 12:16
2018/10/09 13:26
2018/10/10 02:55