Traceback lorsque j'utilise urllib2, obtenez une erreur HTTP 500

Mon code est comme suit, mais lorsqu'il s'exécute, il renvoie une erreur.

search_request = urllib2.Request(url,data=tmp_file_name,headers={'X-Requested-With':'WoMenShi888XMLHttpRequestWin'})
#print search_request.get_method()
search_response = urllib2.urlopen(search_request)
html_data = search_response.read()

l'erreur est:

Traceback (most recent call last):
  File "xx_tmp.py", line 83, in <module>
    print hello_lfi()
  File "xx_tmp.py", line 69, in hello_lfi
    search_response = urllib2.urlopen(search_request)
  File "D:\Python27\lib\urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
  File "D:\Python27\lib\urllib2.py", line 406, in open
    response = meth(req, response)
  File "D:\Python27\lib\urllib2.py", line 519, in http_response
    'http', request, response, code, msg, hdrs)
  File "D:\Python27\lib\urllib2.py", line 444, in error
    return self._call_chain(*args)
  File "D:\Python27\lib\urllib2.py", line 378, in _call_chain
    result = func(*args)
  File "D:\Python27\lib\urllib2.py", line 527, in http_error_defau
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 500: Internal Server Error

Je ne sais pas comment résoudre ce problème? Je veux dire, quand une erreur qui s'est passé, comment mon code de continuer à travailler?

lorsque j'essaie d'utiliser

       try:
                search_response = urllib2.urlopen(search_request)
            except urllib2.HTTPError:
                pass

nouvelle erreur

UnboundLocalError: local variable 'search_response' referenced before assignment

- je utiliser

global search_response

et d'avoir d'erreur

NameError: global name 'search_response' is not defined
  • Le serveur n'a pas, comme à votre demande, ce n'est pas un python problème.
  • C'est le problème avec le Serveur d'envoi de la demande et non pas avec urllib2 essayer une autre url.
  • Vous pouvez intercepter l'exception mais qui ne vous donnera pas toute l'information utile à partir du serveur.
  • ouais,j'connaître c'est un problème de serveur,je veux dire, c'est quand cette erreur qui s'est passé,comment le programme peut-il aller sur le travail
  • Ne pas modifier la question à se poser quelque chose de complètement différent; poser une nouvelle question.
InformationsquelleAutor robert | 2012-12-24