首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python中的cookielib和表单身份验证问题

Python中的cookielib和表单身份验证问题
EN

Stack Overflow用户
提问于 2010-01-09 23:19:27
回答 2查看 1.6K关注 0票数 0

InstaMapper是一种全球定位系统跟踪服务,当设备在InstaMapper网页上被实时跟踪时,它会更频繁地更新设备的位置。我希望这种情况一直发生,所以我想我应该编写一个python脚本来登录到我的帐户并定期访问页面。

代码语言:javascript
复制
import urllib2, urllib, cookielib

cj = cookielib.LWPCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) 
urllib2.install_opener(opener)

params = urllib.urlencode(dict(username_hb='user', password_hb='hunter2')) 
opener.open('http://www.instamapper.com/fe?action=login', params)
if not 'id' in [cookie.name for cookie in cj]:
    raise ValueError, "Login failed"

# try secured page
resp = opener.open('http://www.instamapper.com/fe?page=track&device_key=abc')
print resp.read()
resp.close()

每次都会引发ValueError。如果我删除它并读取响应,页面会认为我禁用了cookie并阻止对该页面的访问。为什么cj不去拿InstaMapper曲奇?

有没有更好的方法让追踪服务认为我一直在查看我的账户?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-10 00:17:45

action=login是参数的一部分,应该进行相应的处理:

代码语言:javascript
复制
params = urllib.urlencode(dict(action='login', username_hb='user', password_hb='hunter2')) 
opener.open('http://www.instamapper.com/fe', params)

(此外,这个特定的用户名/密码组合是无效的,我假设您实际上在实际代码中使用了有效的用户名和密码,否则登录将相应失败。)

票数 0
EN

Stack Overflow用户

发布于 2010-01-10 03:41:55

你有没有看过有没有专门设计用来阻止你的尝试的cookie?我建议使用Wireshark或其他检查器来查看当您手动登录时是否有cookie更改(通过javascript等)。

(道德说明:您可能违反了服务条款,给公司带来的成本比您支付的成本要高得多。我曾经运行过这样的服务,每一次额外的/计划外的位置更新都在0.01-0.05美元之间,但我确信它会下降。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2033814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档