V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
cxbats
V2EX  ›  Python

Python requests 读取 cookies 的问题

  •  
  •   cxbats ·
    WillSkywalker · 2015-11-26 18:45:34 +08:00 · 4530 次点击
    这是一个创建于 3290 天前的主题,其中的信息可能已经有所发展或是发生改变。
    写了一个爬人人网的小工具,登录什么的都正常,但是一旦用保存的 cookies 文件打开就会出现未登录的问题...只有在登录后的 session 里才能工作,一旦关掉再用 cookies 就打不开。
    求解...搜了好多资料都没有这种情况。用的是 requests + LWPCookieJar

    代码在 https://github.com/WillSkywalker/Shikhandi ,诸位请尽情吐槽...
    第 1 条附言  ·  2015-11-27 11:09:10 +08:00
    request 可以自行保存 cookies 这个我知道,但是我希望实现的效果是登录一次,保存 cookie ,然后可以多次访问,不能手动指定文件么?
    6 条回复    2015-11-28 09:36:20 +08:00
    pynix
        1
    pynix  
       2015-11-26 20:15:48 +08:00
    requests 自己 cookie 处理,你的 cookie 是 session cookie ,服务端的 session 过期了。。。
    DeanThompson
        2
    DeanThompson  
       2015-11-27 00:04:41 +08:00
    @pynix 说得对,你把登录和后续的请求都公用同一个 session , requests 自己会处理 cookies
    cxbats
        3
    cxbats  
    OP
       2015-11-27 11:10:09 +08:00
    @DeanThompson @pynix 谢啦,但我想要的效果是一次登录之后可以随时请求...
    pynix
        4
    pynix  
       2015-11-27 15:20:59 +08:00 via Android
    @cxbats 服务端过期了,你保存的 cookie 就是废的。。。一般服务端 session 也就个把小时吧。
    leavic
        5
    leavic  
       2015-11-27 16:39:31 +08:00
    楼主你需要恶补 cookie 基本知识,一个 cookie 不是你说有效就可以一直有效的。
    cxbats
        6
    cxbats  
    OP
       2015-11-28 09:36:20 +08:00
    @leavic 谢啦...只是之前登录知乎的时候可以这样登进去,对这块实在是不太了解... ¡Gracias!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1171 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 18:47 · PVG 02:47 · LAX 10:47 · JFK 13:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.