我不得不承认我对此非常无能为力:我需要登录此网站https://segreteriaonline.unisi.it/Home.do,然后执行一些操作。问题是我找不到在网页源中使用的表单,我基本上从未尝试过通过python登录网站。 这是我写的简单代码。
import requests
url_from = 'https://segreteriaonline.unisi.it/Home.do'
url_in = 'https://segreteriaonline.unisi.it/auth/Logon.do'
data = {'form':'1', 'username':'myUser', 'password':'myPass'}
s = requests.session()
s.get(url_from)
r = s.post(url_in, data)
print r
显然,我得到的是:
<Response [401]>
有什么建议吗? 提前谢谢。
答案 0 :(得分:1)
您需要使用请求身份验证标头。
请检查here:
from requests.auth import HTTPBasicAuth
requests.get('https://api.github.com/user', auth=HTTPBasicAuth('user', 'pass'))
<Response [200]>
答案 1 :(得分:0)
该网站似乎没有登录表单,而是使用HTTP Basic身份验证(导致浏览器请求用户名和密码)。请求通过auth
的{{1}}参数支持 - 所以你应该能够做到这样的事情:
get