2012-01-19 3 views
1

에 파이썬에 대한한다 getaddrinfo 실패를 해결하기 :는 어떻게 DNS를 통해 resolveable되는 이름에도 불구하고, 다음과 같은 결과를 얻을, 창

C:\Windows\system32>nslookup www.google.de 
Nicht-autorisierende Antwort: 
Name: www-cctld.l.google.com 
Address: 173.194.69.94 
Aliases: www.google.de 
C:\Windows\system32>C:\Python27\python.exe 
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import urllib 
>>> urllib.urlopen("http://www.google.de") 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python27\lib\urllib.py", line 84, in urlopen 
    return opener.open(url) 
    File "C:\Python27\lib\urllib.py", line 205, in open 
    return getattr(self, name)(url) 
    File "C:\Python27\lib\urllib.py", line 342, in open_http 
    h.endheaders(data) 
    File "C:\Python27\lib\httplib.py", line 951, in endheaders 
    self._send_output(message_body) 
    File "C:\Python27\lib\httplib.py", line 811, in _send_output 
    self.send(msg) 
    File "C:\Python27\lib\httplib.py", line 773, in send 
    self.connect() 
    File "C:\Python27\lib\httplib.py", line 754, in connect 
    self.timeout, self.source_address) 
    File "C:\Python27\lib\socket.py", line 553, in create_connection 
    for res in getaddrinfo(host, port, 0, SOCK_STREAM): 
IOError: [Errno socket error] [Errno 11001] getaddrinfo failed 
>>> 

방화벽을 비활성화하고 관리자 권한으로 명령 프롬프트를 시작했는데 생각할 수있는 전부입니다. nslookup은 정상적으로 작동하므로 잘못된 것이 없습니다. 제안 사항이 있으십니까?

답변

1

분명히 Internet Explorer 연결 설정 내에서 연결할 수없는 프록시가 정의되어 있으며 urllib이이 설정을 고려하여 어떤 이유로 든 오류가 발생했습니다.

+0

Microsoft의 방식에 익숙하지 않은 사용자의 경우 Internet Explorer 설정이 다른 프로그램에도 영향을 줄 수 있습니다. 프록시 설정은 적어도 Windows Server 2012에서는 Internet Explorer → 도구 → 인터넷 옵션 → 연결 → LAN 설정에 묻혀 있습니다. (그리고 Appleheads가 크롤링을 시작하기 전에 적어도 그 단계에는 문자로 레이블이 지정되어 있으며 Mac 월드에서 의미가있는 예쁜 손잡이는 아닙니다.) –