Python在帖子上请求403

时间:2013-11-11 14:48:22

标签: python python-requests

我尝试登录此site。我总是有403错误。

import requests
session = requests.session()
headers = {'User-Agent' : 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36'}
login = 'email'
password = 'my_pass'
url_login = 'https://www.avito.ru/profile/'
r = session.post(url_login, headers=headers, allow_redirects=True, verify=True, auth=(login, password))
or
r = requests.post(url_login, data={'login':login, 'password': password}, auth=(login, password), allow_redirects=True, headers=headers,)


print r.status_code

或来自here的所有内容都会返回403.问题是什么?是的,我可以使用浏览器的cookie,但我想了解,为什么这个代码错了。如何解决?

感谢。

1 个答案:

答案 0 :(得分:1)

首先,您尝试发布到/profile,而登录表单操作为/profile/login

其次,您以dataauth参数的形式发送凭据。 auth用于HTTP基本身份验证,可能不是您想要的。没有必要这样做。

第三,请注意,错误403 Forbidden401 Unauthorized不同。 403表示服务器拒绝响应它,并且身份验证不会产生任何影响。当然,有可能实现它的人不知道其中的差异,但也可能是他们正在追踪其他东西,并试图像你想要的那样阻止自动访问。