Braveブラウザを使ってスクレイピングをすると広告レスでスクレイピングができます。
Excel(VBA)とSeleniumBasicを使ってスクレイピングをしてみます。
準備
Braveブラウザ
BraveブラウザはChromeでも使われているChromiumコンポーネントを使ったブラウザです。
高速&セキュアを謡い、標準で広告ブロッカーが組み込まれています。
広告ブロッカーで、セキュアで高速なプライベートウェブブラウジング | Brave
Braveブラウザは、PC、Mac、モバイル端末で使用できる高速でプライベートかつ安全なWebブラウザです。今すぐダウンロードして、トラッキングソフトウェアのブロックによるデータとバッテリーを節約した、より高速な広告のないブラウジング体験を...
SeleniumBasic
Excel VBAからBraveブラウザを使ってスクレイピングをするために、SeleniumBasicのインストールが必要です。
インストール方法は以下の記事を参考にしてください。
Excel VBAからBraveブラウザを使ってスクレイピングをするプログラム
価格.comからSSDの値段を取得してみます。
SSD - パソコンの通販・価格比較 - 価格.com
"SSD"(パソコン)をお探しなら価格.comへ。全国のネットショップの価格情報や、人気のランキング、クチコミなど豊富な情報を掲載しています。たくさんの商品の中からあなたが探している"SSD"を比較・検討できます。
VBAプログラム
Sub Main()
Dim driver As New ChromeDriver
Dim elmLoop As WebElement
With New ChromeDriver
.SetBinary Environ$("LOCALAPPDATA") & _
"\BraveSoftware\Brave-Browser\Application\brave.exe"
'プライベートブラウジング
.AddArgument "-incognito"
'非表示
'.AddArgument "--headless"
'画像を読み込ませない
'.AddArgument "--blink-settings=imagesEnabled=false"
'Tor経由でスクレイピングを使う場合
'.AddArgument "--proxy-server=socks5://localhost:9050"
.Get "https://kakaku.com/search_results/SSD/?category=0001&act=Input&lid=pc_ksearch_searchbutton_top"
For Each elmLoop In .FindElementsByClass("c-list1_cell")
Debug.Print elmLoop.FindElementByClass("p-item_name").Text,
Debug.Print elmLoop.FindElementByClass("p-item_price_num").Text
Debug.Print elmLoop.FindElementByTag("A").Attribute("HREF")
Debug.Print
Next
End With
End Sub
コメント