HTTP连接池错误(超出最大重试次数),请求模块中包含url

时间:2015-03-02 13:18:48

标签: python autologin

我尝试通过python中的请求模块登录网站。这是我的python代码:

import requests

url='http://example.com/login.php' 
Data={'user':'user_name','pass':'my_password'} 
session=requests.session() 
req=session.post(url=URL, data=Data)

运行之后,得到以下错误:

HTTPConnectionPool(host='example.com', port=80): Max retries exceeded with url: /login.php (Caused by <class 'socket.gaierror'>: [Errno -2] Name or service not known)

如何解决此错误?

3 个答案:

答案 0 :(得分:0)

Python变量区分大小写。您的变量是小写url,但在session.post方法中,您将url参数设置为uppecase URL。这可能是个问题。

答案 1 :(得分:0)

我遇到了这个问题。在我的情况下,URL是错误的,如下所示:

API ='http://http://localhost:54057/api'

答案 2 :(得分:0)

据我所知,它是造成障碍的代理。 您可以通过在传递 url 时添加代理作为参数来实现。

import requests
site = "yourscrappingsite.com"
proxies = {"https": "http://yourprox.com:PortNo"}
page = requests.get(url=site,proxies=proxies)

这应该对你有用。让我知道您的反馈。