2011-11-30 172 views
-2

我想通過httplib發送http獲取請求,但我面臨的問題。httplib蟒蛇錯誤

 conn = httplib.HTTPConnection("10.30.111.13/View") 
     conn.request("GET", "/Default.aspx") 
     res = conn.getresponse() 

     if res.status == 200: 
      print(res.status) 

     else: 
      print("Something went terribly wrong") 

我收到以下錯誤:

TypeError (cannot concatenate 'str' and 'int' objects). 

如果把代碼的下一行,它的工作原理沒有問題:

conn = httplib.HTTPConnection("www.google.com") 
conn.request("GET", "/") 

編輯,這裏是一個更詳細的日誌我管理拔出我的第三方軟件(它限制了我的python可用性):

File "<string>", line 3248, in initialization 
    File "C:\python22\lib\httplib.py", line 701, in request 
    self._send_request(method, url, body, headers) 
    File "C:\python22\lib\httplib.py", line 723, in _send_request 
    self.endheaders() 
    File "C:\python22\lib\httplib.py", line 695, in endheaders 
    self._send_output() 
    File "C:\python22\lib\httplib.py", line 581, in _send_output 
    self.send(msg) 
    File "C:\python22\lib\httplib.py", line 548, in send 
    self.connect() 
    File "C:\python22\lib\httplib.py", line 516, in connect 
    socket.SOCK_STREAM): 
gaierror: (7, 'getaddrinfo failed') 
+2

如果你在這裏發帖的行號與錯誤輸出 –

+0

的行號報告,我們會更好的幫助你我無法獲取這些信息,因爲我的Python代碼運行投擲第三方應用程序。我還得到PluginError錯誤,正在運行任務「%s」:%s(%s)。\ n完整回溯:\ n \ n%s'%(attr.get('alias','????')。 – guiomie

+1

httplib是一個穩定的模塊,可以工作很多年,沒有錯誤。考慮收集更多的信息。 – pylover

回答

1

我不是某處,我現在就可以測試這一點,但這裏是我想:

你只通過一個IP地址給公司預計,一個DNS地址,而不是IP地址的主機字段。這就是爲什麼你的第二個錯誤列表說'getaddrinfo'失敗。

這就是說,我不知道如何使用httplib的IP地址。也許嘗試「http://10.30.111.13」。測試它的一個好方法是用Google的IP替換上面的IP地址,看看是否仍然出現錯誤。

也許這會幫助 - 抱歉,我不能說更多!

+0

不,加入http://是行不通的,只要有一個:,接下來就是端口,所以它崩潰了。 – guiomie

0

我已更改了DNS地址的IP地址。我還刪除了HTTPConnection()參數中的任何路徑/ URI。現在它可以工作。對不起,這樣一個明顯的問題傢伙。