저는 파이썬 및 네트워크 프로그래밍에 익숙하지 않으며 간단한 프로그램에 문제가 있습니다. 기본적으로 존재하지 않는 웹 사이트에 대한 연결을 여는 중이며 어떻게 든 연결이 성공한 것으로 보입니다. 게다가, 나는 200 개의 리턴 코드를 얻는다. 이것은 HTTP 서버가 존재하고 연결이 OK라고 응답했다는 것을 의미한다. 여기에 내 코드의 관련 부분 :내 프로그램이 존재하지 않는 웹 사이트에 어떻게 연결할 수 있습니까?
import httplib
conn = httplib.HTTPConnection("Nonexistentsite.com", 80)
conn.request("GET","/")
r = conn.getresponse()
print r.status, r.reason
conn.close()
내가 google.com
을 시도하거나 대신 nonexistentsite.com
의 기존의 다른 웹 사이트 때, 나는 301 또는 302 얻을 - Moved permanently
합니다.
왜 이런 일이 일어나는지 분명히 알려주세요. 필자는 visualStudio2010 (IronPython)을 사용하고 있습니다.
이상한, 정규 Python에서 적절한 'socket.gaierror : [Errno -2] 이름이나 서비스가 알려지지 않았습니다.'라고 말하면서 버그가 발생했을 수 있습니까? –
Ironpython 구현 문제가 아니라면 문제가 다른 코드에 있다고 제안 할 수 있습니다. 대부분 사이트가 존재하지 않을 때'getresponse()'에서 여기에 (일반 파이썬에서) 던져진 예외를 잘못 잡아낼 가능성이 있습니다. 또는 위의 코드를 * 정확히 * 테스트 했습니까? 다른 부분이 있음을 의미하는 관련 부분이라고 말하면됩니다. – tjm
@tjm 모든 코드를 게시했습니다. 보시다시피 예외는 없습니다. 그래도 예상되는 동작입니까? –