无法打开在python selenium中添加了cookie的网页



我已经登录到网站,现在试图再次加载网站URL,并期望它自动登录,因为我正在从已经登录的页面添加cookie,但它会生成以下异常,

代码:

import time
from selenium.webdriver import Chrome
driver = Chrome("C:/Users/jupiter/PycharmProjects/webdriver/chromedriver.exe")
driver.get("https://www.flipkart.com/")
driver.maximize_window()
time.sleep(5)
driver.find_element_by_xpath("/html/body/div[2]/div/div/button").click()
time.sleep(5)
driver.find_element_by_xpath("//a[contains(text(), 'Login')]").click()
username =driver.find_element_by_xpath("/html/body/div[2]/div/div/div/div/div[2]/div/form/div[1]/input")
username.send_keys("xyz")
password = driver.find_element_by_xpath("/html/body/div[2]/div/div/div/div/div[2]/div/form/div[2]/input")
password.send_keys("abc@xyz")
driver.find_element_by_xpath("/html/body/div[2]/div/div/div/div/div[2]/div/form/div[3]/button").click()
cookies =driver.get_cookies()
driver = Chrome("C:/Users/jupiter/PycharmProjects/webdriver/chromedriver.exe")
driver.add_cookie(cookies)
driver.get("https://www.flipkart.com/")

例外:

引发exception_class(消息、屏幕、堆栈(selenium.com.mon.exceptions.WebDriverException:消息:无效argument:缺少"cookie"(会话信息:chrome=81.0.4044.113(
(驱动程序信息:chromedriver=81.0.404.469(6813546031a4bc83f717a2ef7cd4ac6ec1199132参考文献/分支头/4044@{#776}(,平台=WindowsNT 10.0.16299 x86_64(

而不是

driver.add_cookie(cookies)

你需要使用

for cookie in cookies:
driver.add_cookie(cookie)

因为driver.add_cookie每次调用添加一个cookie,但driver.get_cookies()返回cookie列表。

您可以使用refresh方法

driver.get(url)
driver.add_cookie({"name": "example", "value": "example"})
driver.refresh()

现在,当刷新页面时,它会加载cookie。

最新更新