para google engine descargar app google-app-engine python-requests urllib3

descargar - Uso de la biblioteca Python de solicitudes en Google App Engine



descargar google app engine para python (3)

Como se mencionó, la rama principal de urllib3 independiente supuestamente ahora es compatible con AppEngine (Haré una versión de PyPI adecuada una vez que alguien confirme este hecho), pero Requests aún no es compatible con App Engine ya que asume varias cosas del sistema de archivos para cargar archivos de configuración que no funcionan Existen en App Engine. Específicamente, el error que se encontró tiene que ver con la carga del archivo de configuración ~/.netrc .

Vea el Issue # 493 .

Por lo que vale, el equivalente en urllib3 sería:

import urllib3 http = urllib3.PoolManager() response = http.request(''GET'', ''someurl'')

Actualización: urllib3 v1.3 fue lanzado ayer, que incluye soporte de AppEngine.

Intento utilizar la impresionante biblioteca de solicitudes en Google App Engine. Encontré un parche para urllib3, que depende de las solicitudes, que es compatible con App Engine. https://github.com/shazow/urllib3/issues/61

Puedo exitosamente

import requests

pero entonces

response = requests.get(''someurl'')

falla con el siguiente rastreo. ¿Que esta pasando?

Traceback (most recent call last): File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/admin/__init__.py", line 317, in post exec(compiled_code, globals()) File "<string>", line 6, in <module> File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/api.py", line 52, in get return request(''get'', url, **kwargs) File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/api.py", line 40, in request return s.request(method=method, url=url, **kwargs) File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/sessions.py", line 208, in request r.send(prefetch=prefetch) File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/models.py", line 458, in send self.auth = get_netrc_auth(url) File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/utils.py", line 43, in get_netrc_auth for loc in locations: File "/Users/Rohan/Dropbox/MuktiTechnologiesINC/MuktiTechnologies/GAE/humanmictweet/GAE/libraries/requests/utils.py", line 40, in <genexpr> locations = (os.path.expanduser(''~/{0}''.format(f)) for f in NETRC_FILES) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/posixpath.py", line 260, in expanduser userhome = pwd.getpwuid(os.getuid()).pw_dir AttributeError: ''module'' object has no attribute ''getuid''


En Google Appengine (versión 1.9.18), las requests versión 2.3.0 (¡solo!) Funcionan EN PRODUCCIÓN (pero no en SDK) si tiene habilitada la facturación, lo que permite el soporte de sockets.

las solicitudes en el Appengine SDK falla con todas las solicitudes https: //:

ConnectionError: (''Connection aborted.'', error(13, ''Permission denied''))

solicita que la versión 2.4.1 falla con:

File "distlib/requests/adapters.py", line 407, in send raise ConnectionError(err, request=request) ConnectionError: (''Connection aborted.'', error(13, ''Permission denied''))

las solicitudes de la versión 2.5.1 fallan con:

File "distlib/requests/adapters.py", line 415, in send raise ConnectionError(err, request=request) ConnectionError: (''Connection aborted.'', error(13, ''Permission denied''))

Información sobre el soporte de sockets: https://cloud.google.com/appengine/docs/python/sockets/

PD: Reemplázate con algo muy doloroso si tienes la intención de usar las solicitudes en GAE.

Consulte también: ¿Se puede usar la biblioteca Python Requests en Google App Engine?