0
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers
def picscrazy(str,int):
register_openers()
datagen, headers = multipart_encode({"imagefile[]": open(str, "rb")})
request = urllib2.Request("http://www.picscrazy.com/process.php", datagen, headers)
str是文件名,int是另一個標誌。 代碼是將文件上傳到圖像託管網站。我使用海報Poster作爲發佈請求。該程序在請求語句後停止並出現錯誤。我無法理解錯誤,無論它是我的網絡還是程序中的問題。 下面是錯誤的回溯:程序突然停止並拋出URLERROR
Traceback (most recent call last):
File "C:\Documents and Settings\Administrator\Desktop\for exbii\res.py", line 42, in <module>
picscrazy(fname,1)
File "C:\Documents and Settings\Administrator\Desktop\for exbii\res.py", line 14, in picscrazy
print(urllib2.urlopen(request).read())
File "C:\Python25\Lib\urllib2.py", line 121, in urlopen
return _opener.open(url, data)
File "C:\Python25\Lib\urllib2.py", line 374, in open
response = self._open(req, data)
File "C:\Python25\Lib\urllib2.py", line 392, in _open
'_open', req)
File "C:\Python25\Lib\urllib2.py", line 353, in _call_chain
result = func(*args)
File "C:\Python25\lib\poster\streaminghttp.py", line 142, in http_open
return self.do_open(StreamingHTTPConnection, req)
File "C:\Python25\Lib\urllib2.py", line 1076, in do_open
raise URLError(err)
URLError: <urlopen error (10054, 'Connection reset by peer')>
「通過對等方重置連接」是一個提示。您的對等方(服務器)重置連接。 –
那麼這是否意味着服務器我上傳文件是拒絕我的請求? – Jonah
「拒絕」?很難說。它正在斷開連接。誰知道爲什麼?您必須閱讀「請求」對象的內容以獲取狀態碼,標題和正文。然後,您可以**更新**您的問題以刪除(幾乎)無用的堆棧跟蹤,幷包含有關您所得到的響應的真正有趣的事實。 –