问题
“invalid argument: invalid 'expiry'”
I'm trying to add cookies to a browser, but getting the following error: How to fix “invalid argument: invalid 'expiry'” in Selenium when adding cookies to a chromedriver?
pickle.dump( driver.get_cookies() , open("cookies.pkl","wb"))
driver.get ( URL )
sleep ( 2 )
cookies = pickle.load(open("cookies.pkl", "rb"))
for cookie in cookies:
driver.add_cookie(cookie)
sleep(2)
driver.get ( URL )
print(driver.get_cookies())
pickle.dump( driver.get_cookies() , open("cookies.pkl","wb"))
Error msg
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: invalid 'expiry'
(Session info: chrome=75.0.3770.100)
回答1:
first of all follow link from comment to change pickle to dict
see also this
https://www.w3.org/TR/webdriver/#add-cookie point 6
expiry should be now int not float.
for cookie in cookies:
if isinstance(cookie.get('expiry'), float):
cookie['expiry'] = int(cookie['expiry'])
driver.add_cookie(cookie)
来源:https://stackoverflow.com/questions/56929108/how-can-i-fix-invalid-argument-invalid-expiry-in-selenium-when-adding-cooki