[pyar] Error en conversión de string a fecha

Maxi maxirobaina en gmail.com
Vie Nov 23 09:45:18 ART 2012


El 23 de noviembre de 2012 08:55, Facundo Batista
<facundobatista en gmail.com>escribió:

> 2012/11/22 Maxi <maxirobaina en gmail.com>:
>
> > No, esta en medio de otra cosa. Precisamente esto:
> >
> https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/twitter/models.py#L92
> >
> >
> >>
> >>
> >> ¿Si hacés "print urlopen", qué ves?
> >
> >
> > <function urlopen at 0xa6a6304>
> >
> > Tengo forma de saber si urlopen es realmente urllib2.urlopen  ?
> >
> >> ¿Y qué es 'url'?
> >>
> >
> > url tiene esto:  http://search.twitter.com/search.json?q=%23django
>
> Esto es lo que yo decía, probalo vos en *tu* intérprete interactivo,
>
> >>> import urllib2, locale
> >>> locale.getlocale()
> (None, None)
> >>> data = urllib2.urlopen('
> http://search.twitter.com/search.json?q=%23django').read()
> >>> locale.getlocale()
> (None, None)
>

Bueno, evidentemente no obtengo los mismos resultados que vos

Python 2.7.2+ (default, Jul 20 2012, 22:12:53)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib2, locale
>>> locale.getlocale()
(None, None)
>>> data = urllib2.urlopen('
http://search.twitter.com/search.json?q=%23django').read()
>>> locale.getlocale()
('es_AR', 'UTF-8')
>>>

Esto es en Ubuntu 11.10



> Si pasa lo mismo que en este ejemplo (que no cambia el locale), lo más
> probable es que o ese urlopen está monkeypatcheado de alguna manera, o
> que no sea el urlopen de urllib2...
>

> Ahora que veo el código ese de mezzanine al que apuntaste, veo que
> está tomando urlopen de urllib2. Pero también veo que está llamando a
> loads() en la misma linea, y loads es algo de django.utils.
>

Lo que hice para aislar el problema fue: (correspondería a la linea 59 del
código en github)

            import locale
            print 'before url', locale.getlocale()    # <--  (None, None)
            print urlopen.__module__     # <--  aca me dice que es urllib2
            data = urlopen(url).read()
            print 'after url', locale.getlocale()     #<--  ('es_AR',
'UTF-8')

            tweets = loads(data)

mismo problema.

Ahora probando esto funciona:

            a = locale.getlocale()  # <--  (None, None)
            data = urlopen(url).read()
            locale.setlocale(a)  # <--  Le vuelvo a asignar (None, None)


Será algo de mi distribución, algún bug ?



> Anyway, otra cosa para que pruebes... importá urllib2, y usá urlopen
> directamente de ahí.
>
> O sea, en el código ese, en el medio de todo, hacé:
>
>   import urllib2
>   # mostrá locale
>   urllib2.urlopen(etc)
>   # mostrá locale
>

Lo probé pero obtengo el mismo error.



Saludos.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20121123/da9dbc95/attachment.html>


More information about the pyar mailing list