加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

如何将会话和Cookie从Selenium浏览器加载到Python中的请求库?

发布时间:2020-12-14 18:54:27 所属栏目:资源 来源:网络整理
导读:如何从Selenium浏览器加载会话和Cookie?以下代码: import requestscookies = [{u'domain': u'academics.vit.ac.in',u'name': u'ASPSESSIONIDAEQDTQRB',u'value': u'ADGIJGJDDGLFIIOCEZJHJCGC',u'expiry': None,u'path': u'/',u'secure': True}]response =
如何从Selenium浏览器加载会话和Cookie?以下代码:
import requests

cookies = [{u'domain': u'academics.vit.ac.in',u'name': u'ASPSESSIONIDAEQDTQRB',u'value': u'ADGIJGJDDGLFIIOCEZJHJCGC',u'expiry': None,u'path': u'/',u'secure': True}]
response = requests.get(url2,cookies=cookies)

给我以下例外:

Traceback (most recent call last):
  File "F:PYTHONpython_scriptscookiescookies3.py",line 23,in <module>
    response = requests.get(url2,cookies=cookies)
  File "C:Python27libsite-packagesrequestsapi.py",line 68,in get
    return request('get',url,**kwargs)<br/>
  File "C:Python27libsite-packagesrequestssessions.py",line 450,in request
    prep = self.prepare_request(req)
    cookies = cookiejar_from_dict(cookies)
  File "C:Python27libsite-packagesrequestscookies.py",line 439,in cookiejar_from_dict
    cookiejar.set_cookie(create_cookie(name,cookie_dict[name]))
TypeError: list indices must be integers,not dict

解决方法

首先,您必须从驱动程序实例获取Cookie:
cookies = driver.get_cookies()

这将为您的会话返回set of cookie dictionaries.

接下来,在请求中设置这些cookie:

s = requests.Session()
for cookie in cookies:
    s.cookies.set(cookie['name'],cookie['value'])

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读