Problema en el base_geolocalize cuando está instalado el M2Crypto

21 views
Skip to first unread message

Daniel Blanco

unread,
Dec 20, 2014, 8:08:20 PM12/20/14
to odoo-ar...@googlegroups.com
Estuve corriendo el módulo oficial de geolocalización "base_geolocalize", (siempre en ubuntu 14.04) y se me iba por una excepción de Network Error, después de un tiempo importante sin hacer ni loguear nada.

Implementando el logging en el módulo, pude ver que se frenaba en la linea que usa urllib.

Probé cambiar la url de la api de https a http, probé cambiar el  módulo urllib por urllib2... no hubo forma de hacerlo andar. 

Me armé un .py para correrlo suelto y funcionaba perfecto, con cualquiera de los dos módulos que mencioné arriba. Ahí me dí cuenta que el objeto que entrega urllib.urlopen(url), trae algo así:

<addinfourl at 140539769261952 whose fp = <M2Crypto.BIO.IOBuffer instance at 0x7fd1e3c15d88>>.

En cambio corriendo la gelocalizacion sola, me entrega algo como ésto.

<addinfourl at 140009460795944 whose fp = <socket._fileobject object at 0x7f567e4efad0>>

Al ver esto, probé cambiar por  "requests" en lugar de "urllib" o "urllib2". Lo mismo daba el problema.. lo que sí, en el módulo éste, no estoy usando para nada M2Crypto, pero sí está instalado en el sistema, por el tema del requerimiento en factura electrónica.

Da la impresión de que el M2Crypto estuviera precargado de antes, y que está encriptando la respuesta, y por lo tanto al querer hacerle un json.load no sabe qué hacer.

¿No se si alguien tiene algún consejo al respecto, en cuanto a cómo "liberarme" del M2Crypto para ese módulo? lo cual será seguramente útil para cualquier otro módulo que se cree y que utilce web services? 


Reply all
Reply to author
Forward
0 new messages