【プログラムの流れ】 ① グーグルクロームでYahoo!JAPAN!路線案内のWebサイトを立ち上げます。
② エクセルシートのB列の最終行を取得します。(データ件数を取得)
③ エクセルシートのC列から出発駅・D列:到着駅をWebサイトへ転記します。
④ Webサイトに出発駅・到着駅が転記されたら、区間運賃を検索します。
⑤ 運賃結果をエクセルシートのE列に転記します。
⑥ データの最終行まで繰り返します。
'
'******** AKIRA55.COM ******* https://akira55.com/transportation_expenses/
'
'VBEの参照設定を行う【VBEの画面より】【ツール】⇒【参照設定】を選択して【Selenium Type Library】にチェックを入れます。
'
Sub transportation_expenses02() 'Yahoo!JAPAN!路線情報(乗り換え案内)
Dim Driver As New Selenium.WebDriver
Dim Webtxt As String
Dim I, lRow As Long
lRow = Cells(Rows.Count, "B").End(xlUp).Row 'B列の最終行を取得します。
With Driver
.Start "chrome"
For I = 2 To lRow 'B列に登録されている最終行まで繰り返します。
.Get "https://transit.yahoo.co.jp/" 'Yahoo!JAPANを開きます
.FindElementByName("from").SendKeys Cells(I, "C") 'C列のセルから出発駅を入力します。
.FindElementByName("to").SendKeys Cells(I, "D") 'D列のセルから到着駅を入力します。
.FindElementByCss("#searchModuleSubmit").Click '検索をクリック
.Wait 2000 'ページの表示待ち
Webtxt = .FindElementByCss("#rsltlst > li:nth-child(1) > dl > dd > ul > li.fare").Text '検索結果より、運賃を取得します。
Cells(I, "E") = Webtxt '運賃の取得結果をE列に代入します。
Next I '全てのデータが終わるまで繰り返します。
.Close
End With
Set Driver = Nothing
End Sub
'
【プログラムの流れ】 ① グーグルクロームでジョルダン乗換案内のWebサイトを立ち上げます。
② エクセルシートのB列の最終行を取得します。(データ件数を取得)
③ エクセルシートのC列から出発駅・D列:到着駅をWebサイトへ転記します。
④ Webサイトに出発駅・到着駅が転記されたら、定期代の検索を行います。
⑤ 結果をエクセルシートのE列~G列に定期代が転記します。
⑥ データの最終行まで繰り返します。
'
'******** AKIRA55.COM ******* https://akira55.com/transportation_expenses/
'
'VBEの参照設定を行う【VBEの画面より】【ツール】⇒【参照設定】を選択して【Selenium Type Library】にチェックを入れます。
'
Sub transportation_expenses03() 'ジョルダン乗換案内(定期代検索)
Dim Driver As New Selenium.WebDriver
Dim Webtxt As String
Dim I, lRow As Long
lRow = Cells(Rows.Count, "B").End(xlUp).Row 'B列の最終行を取得します。
With Driver
.Start "chrome"
For I = 3 To lRow 'B列の最終行まで、繰り返します。(登録件数分)
.Get "https://www.jorudan.co.jp/norikae/teiki.html" 'Webページジョルダン定期代検索を開きます
.FindElementByName("eki1").SendKeys Cells(I, "C") 'C列から出発駅をを入力します
.FindElementByName("eki2").SendKeys Cells(I, "D") 'D列から到着駅を入力します
.FindElementByName("S").Click '検索をクリック
.Wait 2000 'ページの表示待ち
Cells(I, "E") = .FindElementByCss("#bR1 > table > tbody > tr.sums > td:nth-child(2)").Text '1ヵ月の定期代
Cells(I, "F") = .FindElementByCss("#bR1 > table > tbody > tr.sums > td:nth-child(3)").Text '3ヵ月の定期代
Cells(I, "G") = .FindElementByCss("#bR1 > table > tbody > tr.sums > td:nth-child(4)").Text '6ヵ月の定期代
Next I
.Close
End With
Set Driver = Nothing
End Sub
'