python中的HTTPConnection请求socket.gaierror

2024-10-02 22:23:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我今天在尝试通过发送“GET”HTTP请求检索XML时遇到错误。

from httplib import HTTPConnection
import urllib

params = urllib.urlencode({'sK': 'test', 'sXML': 1})
httpCon = HTTPConnection("http://www.podnapisi.net",80)
httpCon.request('GET', '/en/ppodnapisi/search',params)
r1 = httpCon.getresponse()

这里是我得到的错误:

.....
File "C:\Python27\lib\socket.py", line 553, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno 11004] getaddrinfo failed

我试图检索的XML HERE

我怎样才能纠正这个错误?

提前谢谢。。。


Tags: infromimporthttpget错误xmlsocket
2条回答

HTTPConnection构造函数中没有方案(http://):

httpCon = HTTPConnection("www.podnapisi.net",80)

它已经知道它是HTTP,它是HTTPConnection对象:)

您不小心在HTTPConnectiondomain参数中包含了协议前缀。你想要:

httpCon = HTTPConnection("www.podnapisi.net", 80)

通常,此错误表示将域名解析为IP地址时出现问题。可能只是间歇性的。如果问题仍然存在,请检查系统上的DNS配置。

例如,您可以set it to use Google's public DNS server。有关如何在Microsoft Windows上配置DNS服务器的详细信息,请参阅Microsoft's knowledge database

相关问题 更多 >