Программа резко останавливается и выдает URLERROR - PullRequest
0 голосов
/ 19 сентября 2011
 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 - просто еще один флаг. Код для загрузки файла на веб-сайт хостинга изображений. Я использую плакат Постер для отправки запросов. Программа останавливается после запроса и выдает ошибку. Я не могу понять ошибку, является ли это проблемой в моей сети или в программе. Ниже приведена трассировка ошибки:

 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')>

1 Ответ

2 голосов
/ 19 сентября 2011

Если вы не можете отобразить заголовок, возвращаемый с сервера, значит, ваш сервер просто отключил вас.

Возможно, ваш запрос плохой, но это маловероятно.

Возможно, вы превысили ограничения полосы пропускания.

Возможно, ваши запросы выглядят как атака DDOS, потому что они происходят слишком часто.

...