4
好吧,我的目標是通過代理連接到https網站,需要身份驗證,無需任何人爲交互。Selenium - 幽靈問題與PhantomJS和代理驗證與火狐
解決方案#1:火狐
fp = webdriver.FirefoxProfile()
fp.set_preference("network.proxy.type", 1)
fp.set_preference("network.proxy.http", "IP")
fp.set_preference("network.proxy.http_port", PORT)
driver = webdriver.Firefox(firefox_profile=fp)
driver.get("http://www.google.com")
問題:一旦打開瀏覽器,它打開AUTH彈出用戶名和密碼。
alert = driver.switch_to_alert()
alert.send_keys('balbla')
不起作用,根本沒有反應。 也改變代理
http://username:[email protected]
解決方案#2沒有運氣:PhantomJs
與phantomjs我設法在代碼中的身份驗證:
service_args = [
'--proxy=https://IP:PORT',
'--proxy-type=http',
'--proxy-auth=USERNAME:PASSWORD',
]
br = webdriver.PhantomJS(PATH,service_args=service_args)
br.get('https://www.google.com/')
問題:我不能上網到任何https,例如我試圖進入https://www.gmail.com,我得到空白頁面。 代理與https一起工作(手動雙重檢查)。
加入
'--ssl-protocol=any'
沒有達到預期效果。
我在Linux env下使用了python的selenium。尋找能夠幫助我解決問題的解決方案。
謝謝你了。