当前位置: 首页 > 知识库问答 >
问题:

为什么我无法将Cookie上载到Selenium?

卢树
2023-03-14

我保存的cookies如下:

auth_func()

# if successful auth
pickle.dump(driver.get_cookies(), open('cookies.pkl', 'wb'))

然后我尝试在同一个域上使用它们:

cookies = pickle.load(open('cookies.pkl', 'rb'))
for cookie in cookies:
    driver.add_cookie(cookie)

但是我得到了错误:

文件"test.py",第115行,在user_agent=auth()文件"test.py",第50行,在authdriver.add_cookie(cookie)文件"C:\Python37\lib\site-pack\selenium\webdr\Remote\webdriver.py",第894行,在add_cookieself.execute(命令ADD_COOKIE,{'cookie':cookie_dict})文件"C:\Python37\lib\site-pack\selenium\webdr\Remote\webdriver.py",第321行,在执行self.error_handler.check_response(响应)文件"C:\Python37\lib\site-pack\selenium\webdr\Remote\errorhandler.py",第242行,在check_response引发exception_class(消息、屏幕、堆栈跟踪)selenium.common.exceptions.InvalidArgumentException:消息:无效参数:无效的“过期”(会话信息:chrome=78.0.3904.44)

Cookie结构:

>>> cookies = pickle.load(open('cookies.pkl', 'rb'))
>>> for c in cookies:
...     c
...
{'domain': '.linkedin.com', 'expiry': 1633780372, 'httpOnly': False, 'name': '***********', 'path': '/', 'secure': False, 'value': '*************'}
...

共有1个答案

简宏义
2023-03-14

问题是,出于某种原因,cookie的名称写错了。解决方法如下:

cookies = driver.get_cookies()
for cookie in cookies:
    if cookie.get('expiry', None) is not None:
        cookie['expires'] = cookie.pop('expiry')
pickle.dump(cookies, open('cookies.pkl', 'wb'))
 类似资料:
  • 我试图使用JNA从Java应用程序调用。dll文件。我得到以下异常:

  • 我想卸载 fcitx 但是 可是,实际是有 fcitx 的 另外两个命令也不行

  • 在application.properties中,我将java和maven版本指定为 无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.8.1:在项目上编译(default-compile)heroku-spring:编译时出现致命错误:无效的目标版本:11 我该怎么解决呢?

  • 我正在尝试:url='https://github.com/Anubhav1107/Machine_Learning_A-Z/blob/master/Part2-回归/第5节-多重线性回归/50_Startups.csv' 我得到的是: 解析错误回溯(最近一次调用上次)在()1 url='1https://github.com/Anubhav1107/Machine_Learning_A-Z/bl

  • 我刚刚完成了SolrCloud配置的设置,其中三个ZooKeeper节点位于单独的虚拟服务器上,两个Solr节点也位于单独的虚拟服务器上。所有端口都已正确配置,整个云似乎正在正确通信。但是,我无法将配置上载到ZooKeeper。我所做的正是我在测试场景中所做的,没有抛出错误,但配置从未显示在ZooKeeper中。以下是我如何使用客户端: 这是输出,它(对我来说)并不表示有任何问题: 连接local

  • 我在本地和全局安装了Nodemon,但在这两种情况下都得到了相同的错误: Nodemon:无法加载文件C:\users\xxx\appdata\roaming\npm\Nodemon.ps1,因为在此系统上禁用了运行脚本。有关详细信息,请参阅https://go.microsoft.com/fwlink/?LinkId=135170上的about_Execution_Policies。 怎么修?