[Python-es] por que urllib2 trata codigo 201 como un error?

G V nadaird en gmail.com
Mar Mar 26 17:43:59 CET 2013


leyendo de stackoverflow[1], creo que trata todo como un error ("200 error
codes" no se por qué no lo llama de otra manera) por lo que tienes que ser
tu quien haga un handler que lo gestione

[1]
http://stackoverflow.com/questions/7032890/why-does-pythons-urllib2-urlopen-raise-an-httperror-for-successful-status-cod


2013/3/26 Jose Caballero <jcaballero.hep en gmail.com>

> Hola,
>
>
>
> estoy escribiendo un pequegno cliente que manda mensajes HTTP PUT a un
> server, y recibe un codigo 201 CREATED cuando todo va bien.
> Sin embargo, parece que urllib2 interpreta ese 201 como un error. Por que?
> Se puede evitar sin tener que usar un try - except?
> Aqui [1] un trozo del codigo, y aqui [2] el traceback que se produce.
>
> Cualquier comentario es mas que bienvenido.
>
>
>
> Muchas gracias,
> Jose
>
>
>
> -------------------------------------------------------------------------------------------------------------------------------------------
>
> [1]
>
> opener = urllib2.build_opener(urllib2.HTTPHandler)
> request = urllib2.Request(url, data=data)
> request.get_method = lambda: 'PUT'
> out = opener.open(request)
>
>
> [2]
>
> Traceback (most recent call last):
>   File "./register_factory.py", line 56, in ?
>     register_factory()
>   File "./register_factory.py", line 52, in register_factory
>     url = opener.open(request)
>   File "/usr/lib64/python2.4/urllib2.py", line 364, in open
>     response = meth(req, response)
>   File "/usr/lib64/python2.4/urllib2.py", line 471, in http_response
>     response = self.parent.error(
>   File "/usr/lib64/python2.4/urllib2.py", line 402, in error
>     return self._call_chain(*args)
>   File "/usr/lib64/python2.4/urllib2.py", line 337, in _call_chain
>     result = func(*args)
>   File "/usr/lib64/python2.4/urllib2.py", line 480, in http_error_default
>     raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
> urllib2.HTTPError: HTTP Error 201: CREATED
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20130326/a54a202e/attachment.html>


Más información sobre la lista de distribución Python-es