web-dev-qa-db-ja.com

Python SeleniumがTORを使用してプロキシを取得することはFirefoxで機能しますが、chrome

ここ数日、私はpythonで遊んでいて、youtubeから学び、自動化したいものをいくつか作成することにしました。

私は小さな問題を発見しました-Firefoxブラウザでpythonスクリプトを使用すると、バックグラウンドでTorブラウザを開いて次のコードを使用できます。

profile = webdriver.FirefoxProfile()
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.socks", '127.0.0.1')
profile.set_preference("network.proxy.socks_port", 9150)
profile.set_preference("network.proxy.socks_remote_dns", False)
profile.update_preferences()
browser = webdriver.Firefox(firefox_profile=profile)

すべてが機能し、毎回新しいIPでWebブラウザを開きます。今、私はこのコードを使用して、Chromeで同じことを試しました

PROXY = "127.0.0.1:9150" # IP:PORT or Host:PORT
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server=%s' % PROXY)
chrome = webdriver.Chrome(chrome_options=chrome_options)

私はこのコードを(torからではなく)通常のプロキシでテストしましたが、実際に機能しました。

これは、私がこれを行うとchromeに起こることです: http://prntscr.com/kf8vzt

なぜそれがChromeではなくFirefoxで機能するのか、Torがfirefoxに基づいて書かれているためかもしれないと考えていました。 (私は間違っているかもしれません、私がそうなら、これを修正してください)。

Chromeでも使用できますか?

chrome設定は、内部でセットアップしようとしました

8
Toms Audrins

クロムでTorのSOCKSプロキシサーバーを使用するには、--proxy-serverオプションを使用してスキームにsocksプロトコルを含めます。

PROXY = "socks5://127.0.0.1:9150"

ChromeはデフォルトでHTTPプロキシに設定されているため、起動時にサイトに接続できません。

6
drew010