我正在尝试使用 requests 库通过 Python 脚本登录网站,但我不断收到 405 错误,我不知道为什么会收到它。
import requests
payload = {
'guid': 'xxxxx',
'password': "xxxx"
}
head = {'Host': 'www.blockchain.com',
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36',
'Upgrade-Insecure-Requests': '1',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'en-US,en;q=0.9'
}
#This URL will be the URL that your login form points to with the "action" tag.
url_address = 'https://login.blockchain.com/#/login'
with requests.Session() as session:
post = session.post(url_address, data=payload, headers = head, allow_redirects=True)
print(f'{post}')
我检查了表单,输入字段的名称似乎也正确。
我的代码做错了什么?
答案 0 :(得分:0)
这是typescript-tuple在already answered上由Server Fault制作的@Samit:
<块引用>405 状态码响应意味着您尝试的 HTTP 方法不是
允许。比如说,如果服务器上不允许 PUT
请求,它会
使用响应代码 PUT
拒绝客户端的 405 Method not allowed
请求。
因此,在您的情况下,也可能不允许 POST
方法用于
您正在发送请求,而该请求只是拒绝您
通过发送 POST
错误响应来发出任何 405
请求。