我正在尝试访问以下网站https://electionbuddy.com/elections/4322/results
我试过使用handler = urllib2.HTTPBasicAuthHandler(password_mgr)
etc和requests
,但是webapp只是返回一个页面,说我没有权限(用户/通行证无处可去)。我试过萤火虫,但没有发现明显的迹象。如果需要,我可以编辑和附加。
我怎么能登录到这样一个网站呢?正如Burhan所提到的,在这种情况下,您需要“登录并保存发送的cookies,然后在下一个请求中将它们传递到结果页面”。
为了跟进这件事-为什么下面的不起作用
import requests
payload = {'user_username': 'xxxxxxxxx', 'user_password': 'xxxxxxx'}
r = requests.post("https://electionbuddy.com/login", data=payload)
r = requests.get('https://electionbuddy.com/elections/xxxx/results', cookies=r.cookies)
print r.text
似乎有一个身份验证令牌,与会话id不同。但不确定如何进行此操作。。。
谢谢
我曾经不得不访问一个受用户名/密码保护的url,并使用以下方法解决了这个问题
希望这有帮助
我想这个网站会在你登录时为你制作一个会话cookie。 尝试首先登录,看看是否抛出一个cookie,如果是,请将cookie提供给您需要的页面。 你熟悉库基里布吗?
只是加上答案,如果有人发现同样的问题。
问题中给出的url是安全的,即使用HTTPS。
因此,其他地方建议的HTTP基本身份验证显然行不通。基本身份验证在纯http上工作。Https是加密。
使用诸如pycUrl或httplib之类的库可能是完全提供HTTPS支持的正确选择
相关问题 更多 >
编程相关推荐