SeleniumBasicを使いTorネットワーク経由でWeb操作(スクレイピング)を自動化する方法

SeleniumBasicとTor Browserを使ってTorネットワーク経由でWeb操作やデータ取得(スクレイピング)を自動化します。
最新のSelenium BasicとTor Browser、そして古いFireFoxが必要です。

事前に準備が必要なもの

以下のリンクから入手することができます。

事前にインストールしておいてください

注意

FirefoxはVer46.0が必要です。
インストールして起動したらFirefoxの自動更新を停止させておく必要があります。

image

SeleniumBasicからTor経由でWeb操作を行うVBAプログラムコード

Tor BrowserにはTorネットワークが組み込まれおりプロキシサーバーとして外部から接続が可能であるためTow Browserを立ち上げた状態で、Firefoxを起動しプロキシを介してTorネットワークを利用しています。
Tor Browserを手動なりプログラムで起動し、Firefox側のプロキシを設定したらあとは普通にFirefoxの制御プログラムを書くだけです。

Tor Browserのネットワーク接続確認画面

image

これを見ると、

  • SOCKS v5
  • ローカルホスト(localhost or 127.0.0.1)
  • ポート 9150
  • SOCKS5を使用する時DNSもプロキシ経由

でアクセスすれば良いことになります。

VBAのコードは以下になります。

Private driver As New Selenium.FirefoxDriver

Sub Main()
    With driver

        .SetPreference "network.proxy.type", 1
        .SetPreference "network.proxy.socks", "localhost"
        .SetPreference "network.proxy.socks_port", 9150
        .SetPreference "network.proxy.socks_version", 5
        .SetPreference "network.proxy.socks_remote_dns", True
        .SetPreference "network.proxy.no_proxies_on", ""

        .Start
        .Get "http://taruo.net/e/"
        .Wait 60 * 1000
        .Quit
    End With
End Sub

コメント

タイトルとURLをコピーしました