問題描述
我正在嘗試將 cookie 添加到瀏覽器,但出現(xiàn)以下錯誤:
I'm trying to add cookies to a browser, but getting the following error:
消息:無效參數(shù):無效的到期"(會話信息:chrome=75.0.3770.90)
Message: invalid argument: invalid 'expiry' (Session info: chrome=75.0.3770.90)
此代碼顯示了我如何加載和添加 cookie.
This code shows how I load and add cookies.
for cookie in pickle.load(open(r'{0}{1}_cookie.pkl'.format(settings.COOKIES_PATH, self.tv_username), 'rb')):
self.browser.add_cookie(cookie)
cookie 的值:
{'__utmc': '226258911', '_sp_id.cf1a': '0b243b32-8dee-46d9-a243-bb4d2bfcb805.1560942815.1.1560942821.1560942815.5941cbc0-0500-4a17-8f6c-4ee3f133f67c', 'km_vs': '1', '__utmt': '1', '__utma': '226258911.510671571.1560942814.1560942814.1560942814.1', 'km_ai': 'm6caeIAUtEqx%2BIWda%2F7klZER%2F1Y%3D', 'kvcd': '1560942821112', '__utmb': '226258911.2.10.1560942814', 'km_lv': '1560942821', '__utmz': '226258911.1560942814.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)', 'etg': 'undefined', '_sp_ses.cf1a':'*'}
它適用于以前版本的 chrome.任何幫助將不勝感激!
It worked fine with previous version of chrome. Any help would be appreciated!
推薦答案
問題是您嘗試添加的 cookie 格式與 selenium 預(yù)期的格式不同.
The problem is that you are trying to add the cookies with a different format than the selenium expects.
python selenium api 參考 說你必須用這樣的字典插入 cookie
The python selenium api reference says that you have to insert the cookies with a dict like that
driver.add_cookie({'name' : 'foo', 'value' : 'bar'})
因此您必須調(diào)整循環(huán)以使用鍵值格式
So you have to adapt your loop to use a key,value format
for key, value in pickle.load(open(r'{0}{1}_cookie.pkl'.format(settings.COOKIES_PATH, self.tv_username), 'rb')):
self.browser.add_cookie({'name' : key, 'value' : value})
這篇關(guān)于如何修復(fù)“無效的參數(shù):無效的‘到期’"在向 chromedriver 添加 cookie 時在 Selenium 中?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!