1

httplibPythonでインターネット上の多くのページのHTTPヘッダーを取得するスクリプトがあります。

私の問題は特定のドメイン(およびおそらく他のドメイン) にありhttplib、例外が発生しますが、その理由がわかりません。

>>> import httplib
>>> http = httplib.HTTPConnection('iswtc.la')
>>> http.request('GET', '/a')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python2.6/httplib.py", line 914, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib64/python2.6/httplib.py", line 951, in _send_request
    self.endheaders()
  File "/usr/lib64/python2.6/httplib.py", line 908, in endheaders
    self._send_output()
  File "/usr/lib64/python2.6/httplib.py", line 780, in _send_output
    self.send(msg)
  File "/usr/lib64/python2.6/httplib.py", line 739, in send
    self.connect()
  File "/usr/lib64/python2.6/httplib.py", line 720, in connect
    self.timeout)
  File "/usr/lib64/python2.6/socket.py", line 553, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno -2] Name or service not known

この特定のドメインの違いは何ですか?どうすればこれを処理できますか?

PS:これはうまく機能するため、実際には私のコードではありません:

>>> http = httplib.HTTPConnection('bit.ly')
>>> http.request('GET', '/a')
4

1 に答える 1

1

bit.ly存在しますが、存在iswtc.laしません:

$ nslookup bit.ly

Non-authoritative answer:
Name:   bit.ly
Address: 69.58.188.39
Name:   bit.ly
Address: 69.58.188.40


$ nslookup iswtc.la

** server can't find iswtc.la: NXDOMAIN
于 2013-03-02T20:38:12.173 に答える