我是python和網絡編程的新手,我遇到了一個簡單的程序問題。我基本上打開一個連接到一個不存在的網站,不知何故,似乎連接成功。而且,我得到一個200返回代碼,這意味着http服務器已經迴應了它存在並且連接正常。這裏是我的代碼的相關部分:我的程序如何連接到不存在的網站?
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]名稱或服務不知道',也許你遇到了一個錯誤? –
除非它是一個諷刺性執行問題,否則我可能會建議您的代碼中存在其他問題。當網站不存在時,最有可能錯誤地捕獲從getresponse()中拋出的異常(在常規python上)。或者你是否已經用*完全*上面的代碼進行了測試?你說這是暗示有其他部分的相關部分。 – tjm
@tjm我已經發布了所有的代碼。正如你所看到的,我沒有處理任何異常。這是預期的行爲嗎? –