2017-10-09 19 views
0

私は、Webサイトにアクセスし、プロキシを変更してWebサイトをリロードするボットを作成しています。私はループ内のクロムwebdriverのための更新をプロキシにしたいが、新しいプロキシを使って新しいwebdriverを作成すると、それを行う方法しか見つけられなかった。私は、現在のクロムドライバのプロキシを更新したいだけで、新しいプロキシを使って新しいプロンプトを作成することはしません。Python Selenium |ブラウザを再起動せずにプロキシを更新する

x = 1 
while x < 5: 

    chrome_options = webdriver.ChromeOptions() 
    chrome_options.add_argument('--proxy-server=%s' % random.choice(PROXY)) 

    chrome = webdriver.Chrome(chrome_options=chrome_options) 
    chrome.get("http://whatismyipaddress.com") 
    x = x + 1 

このコードは、ループを繰り返すたびに新しいWebdriverを作成します。代わりに新しいプロキシを現在のwebdriverに更新するようにすることはできますか?

ブラウザを再起動せずにプロキシを変更したいのは、再起動するとcaptchaを入力する必要があるからです。私がしていないときは、キャプチャを入力せずに単にプロキシを変更して送信します。私は、このソリューションは、それが唯一の引数経由PhantomJS

browser.command_executor._commands['executePhantomScript'] = ('POST', '/session/$sessionId/phantom/execute') 
    browser.execute('executePhantomScript', {'script': 'phantom.setProxy('PROXY_IP', 'PROXY_PORT');', 'args' : [] }) 

パスプロキシのために働く見つかっ

答えて

0

は、実行時にプロキシを変更することができるようにdoesntの。 Webdriverの別のインスタンスを作成する必要があります。

関連する問題