【问题标题】:Python 3 httplib2 cookiesPython 3 httplib2 cookie
【发布时间】:2013-03-20 01:02:39
【问题描述】:

已修复,httplin2 不能处理多个cookie,补丁可以在这里找到:http://code.google.com/p/httplib2/issues/detail?id=146

我正在编写一个 facebook 登录脚本来获取我最后的通知,但是 我有问题。我已经从 urllib 更改为 httplib2 因为它 对我来说似乎更容易和更快。使用 urllib 我能够得到 正确的 cookie 并在我需要检索时使用它 通知,现在我正在使用 httplib 页面中的示例:

user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN;

rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8' headers = {'User-Agent' : user_agent, 'Content-type': '应用程序/x-www-form-urlencoded','接受': 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', '连接':'保持活动','接受编码':'gzip,放气', “推荐人”:“http://m.facebook.com/”} 数据= {'电子邮件':'我的用户名','pass':'我的密码', 'post_form_id':'','charset_test':'','版本':1,'ajax':1, “pxr”:1,“gps”:1,“登录”:“进入”} 响应,内容= h.request("http://www.facebook.com/login.php?m=m&refsrc=http://m.facebook.com/&refid=0", "POST", urllib.parse.urlencode(data), headers=headers)

这是我得到的标题:

{'status': '200', 'x-cnection': 'close', 'content-location':

'http://m.facebook.com/home.php?refsrc=http%3A%2F%2Fm.facebook.com%2F&refid=0&m_sess=***tAm60&_rdr', “传输编码”:“分块”、“设置 cookie”: 'datr=******F-OQsTCnbw0Caa;过期=格林威治标准时间 2013 年 9 月 6 日星期五 20:33:26; 路径=/;域=.facebook.com; httponly','expires':'星期六,2000 年 1 月 1 日 格林威治标准时间 00:00:00”,“x-fb-server”:“10.62.188.41”,“内容长度”: '26702', '-content-encoding': 'gzip', 'pragma': '无缓存', '缓存控制':'私有,无缓存,无存储,必须重新验证', 'date': 'Wed, 07 Sep 2011 20:33:27 GMT', 'p3p': 'CP="Facebook 没有 有 P3P 政策。在这里了解原因:http://fb.me/p3p"', 'content-type': '文本/html; charset=utf-8', 'x-frame-options': 'DENY'}

如果我不使用 h.follow_all_redirects = True 选项,它不会 将我重定向到主页,但设置的 cookie 在第一个 重定向前的页面。我得到的cookies是:set-cookie': 'datr=F*******F-OQsTCnbw0Caa; expires=Fri, 06-Sep-2013 20:33:26 GMT; path=/; domain=.facebook.com; httponly'

但这些 cookie 不足以激活会话。在里面 浏览器我得到一个更大的 cookie:

datr=EzIL*********e-JFJL; lu=wgrr3q**********; locale=es_LA; L=2;

act=13*****; m_user=***%40gmail.com%3A526402587%3AN******%3A0% 3Av_1%2Cajax_1%2Cwidth_1600%2Cpxr_1%2Cgps_1%3A13***1099; p=182;佛罗里达州=1; W=13****99; reg_fb_ref=https%3A%2F%2Fwww.facebook.com%2Flogin.php%3Fm%3Dm%26refsrc%3Dhttp%253A%252F%252Fm.facebook.com%252F%26refid%3D0

可能是什么问题?

【问题讨论】:

  • 如果它是“固定的”,请不要在问题中编辑它,在您自己的问题上发布答案(并接受它)。
  • 感谢您的评论,我不知道该怎么办。

标签: python cookies python-3.x httplib2


【解决方案1】:

已修复,httplin2 不能处理多个cookie,补丁可以在这里找到:http://code.google.com/p/httplib2/issues/detail?id=146

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 2011-10-09
    • 2016-09-18
    • 2011-10-26
    相关资源
    最近更新 更多