2016-09-30 4 views
1

Так что все работаетИзменение прокси-сервера во время Селен

fp = webdriver.FirefoxProfile() 
fp.set_preference("network.proxy.type", 1) 
fp.set_preference("network.proxy.http", PROXY_HOST) 
fp.set_preference("network.proxy.http_port", int(PROXY_PORT)) 
fp.update_preferences() 
driver = webdriver.Firefox(firefox_profile=fp) 

Но если водитель уже создан, прокси-сервер не может установить. Это не работает

driver = webdriver.Firefox() 
driver.profile.set_preference("network.proxy.type", 1) 
driver.profile.set_preference("network.proxy.http", PROXY_HOST) 
driver.profile.set_preference("network.proxy.http_port", int(PROXY_PORT)) 
driver.profile.update_preferences() 

И поэтому тоже.

driver = webdriver.Firefox() 
driver.firefox_profile.set_preference("network.proxy.type", 1) 
driver.firefox_profile.set_preference("network.proxy.http", PROXY_HOST) 
driver.firefox_profile.set_preference("network.proxy.http_port", int(PROXY_PORT)) 
driver.firefox_profile.update_preferences() 

Почему? Не могу понять. Я что-то не так?

+0

У вас появляется сообщение об ошибке? Если да, то какой? Не влияет ли веб-драйвер на ваши новые настройки прокси-сервера? –

+0

№ Нет ошибок. Все работает правильно. Но настройки не применяются. –

ответ

1

При использовании WebDriver с Firefox использование профиля - одноразовая вещь. Когда драйвер запускает браузер, он записывает объект профиля на диск и запускает исполняемый файл браузера. После этого не будет механизма для просмотра браузером каких-либо дальнейших изменений в объекте профиля WebDriver. Чтобы изменить прокси-сервер, вы должны установить настройки в профиле до запуска браузера.

Смежные вопросы