2017-01-10 347 views
1

我想存儲和上傳一個cookie,我通過硒從網頁中檢索到一個cookie。Selenium Chromedriver添加cookie - 無效的域錯誤

我是新來的餅乾,所以請告訴我我做錯了什麼。我在嘗試學習。

我打開一個網頁了硒,手動登錄,然後[執行一些動作等。(和我的代碼設置30秒後拿到餅乾)

print "adding cookies now" 
cookies = pickle.load(open("cookies.pkl", "rb")) 
for cookie in cookies: 
    driver.add_cookie(cookie) 

,我cookies.pkl文件看起來是這樣的:

(lp0 
(dp1 
Vdomain 
p2 
V.twitter.com 
p3 
sVsecure 
p4 
I00 
sVvalue 
p5 
V"v3:1484006785862560132892059" 
p6 
sVexpiry 
p7 
F1531267585.126113 
sVpath 
p8 
# more lines 

這個log_in_and_store()後,我嘗試用硒重新打開頁面加載此餅乾。如果做得對,它應該打開我離開的頁面!不是登錄頁面。

當我試圖上傳我的餅乾網頁是這樣的:

driver.get('http://www.website.com') 
cookies = pickle.load(open("cookies.pkl", "rb")) 
for cookie in cookies: 
    print cookie 
    driver.add_cookie(cookie) 

add_cookies是引發此錯誤:

selenium.common.exceptions.WebDriverException: Message: invalid cookie domain: invalid domain:".twitter.com" (Session info: chrome=55.0.2883.95) (Driver info: chromedriver=2.24.417412 (ac882d3ce7c0d99292439bf3405780058fcca0a6),platform=Mac OS X 10.12.1 x86_64)

這個我試過了,所以請不要聯繫我它(Selenium addCookie getting Invalid Cookie Domain Exception even though I'm on the right domain

我也嘗試改變chromedriver版本,更改我的代碼一百萬次,並將我的頭撞在牆上。這些工作都沒有。

請大家幫忙,非常感謝

回答

0

我在Py硒中也得到這個錯誤。

解決方案是; 首先訪問您嘗試添加Cookie的網站的主頁。

# first visit home page 
    url = "https://www.website.com" 
    driver.get(url) 

    # add cookies from pickled-txt or a txt file 
    cookies = pickle.load(open("cookies.pkl", "rb")) 
    for cookie in cookies: 
     driver.add_cookie(cookie) 

    # visit again and you shall see your account logged in 
    url = "https://www.website.com" 
    driver.get(url) 
相關問題