全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 477|回复: 3

[疑问] 全球python开发论坛之保存cookie到本地问题

[复制链接]
发表于 2022-7-8 13:09:15 | 显示全部楼层 |阅读模式
使用爬虫时,为了避免重复登录,我就把cookie存在本地,现在遇到了一个问题,就是,使用session的时候,cookie是会自动更新的,我想要把脚本运行完之后最新的cookie覆盖掉我本地的cookie文件(保持最新),保存cookie的时候,我把cookies赋值成一个LWPCookieJar,所以他有一个save的方法,但是读取cookie的时候,cookies是被复制成了一个字典,所以没有save了,这个有办法解决吗?毕竟loc卧虎藏龙。
  1. # 保存
  2. session = requests.Session()
  3. session.cookies = http.cookiejar.LWPCookieJar(filename=cookie_file)
  4. # 用账号密码模拟登录后保存
  5. session.cookies.save(ignore_discard=True, ignore_expires=True)

  6. # 读取本地cookies
  7. load_cookiejar = http.cookiejar.LWPCookieJar()
  8. load_cookiejar.load(cookie_file, ignore_discard=True, ignore_expires=True)
  9. load_cookies = requests.utils.dict_from_cookiejar(load_cookiejar)
  10. cookies_ = requests.utils.cookiejar_from_dict(load_cookies)
  11. session.cookies = cookies_
复制代码
发表于 2022-7-8 18:04:07 | 显示全部楼层
  1. cookie_file = 'mom.session'
  2. session = requests.Session()
  3. session.cookies = http.cookiejar.LWPCookieJar(filename=cookie_file)
  4. # 用账号密码模拟登录后保存
  5. session.get("https://www.baidu.com")
  6. session.cookies.save(ignore_discard=True, ignore_expires=True)

  7. # 读取本地cookies
  8. load_cookiejar = http.cookiejar.LWPCookieJar(filename=cookie_file)
  9. load_cookiejar.load(cookie_file, ignore_discard=True, ignore_expires=True)
  10. session = requests.Session()
  11. session.cookies = load_cookiejar
  12. session.get("https://www.google.com")

  13. ## 更新本地
  14. session.cookies.save(ignore_discard=True, ignore_expires=True)
复制代码
 楼主| 发表于 2022-7-8 17:39:40 | 显示全部楼层
咋回事,建政 撕逼 大家讨论的热火朝天,技术贴大家都沉默了
 楼主| 发表于 2022-7-8 18:30:42 | 显示全部楼层

卧槽,可以了,loc果然大佬多,谢谢。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-26 01:13 , Processed in 0.074486 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表