«ImportError: нет модуля с именем _ssl» с помощью dev_appserver.py из Google App Engine

у использоватьrequests модуль в стандартной среде выполнения Python для Google App Engine.

Цитата изофициальные документы Google Cloud:

Вы можете использовать сторонние библиотеки, которые являются чистым кодом Python без расширений C,скопировав библиотеку в каталог вашего приложения. Если сторонняя библиотека уже встроена и поставляется вместе со средой выполнения, вы можете использовать библиотеку, не копируя ее в свое приложение.

Сторонние библиотеки должны быть реализованы в виде чистого кода Python без расширений Си. При копировании в каталог приложения они учитываются в квотах файлов, поскольку библиотека загружается в App Engine вместе с кодом вашего приложения.

requests не входит в комплект GAE, поэтому я добавил его в папку приложения в соответствии с инструкциями.

requests потребовалось несколько других модулей, которые не поставляются с GAE, поэтому я добавил все из них в папку своего приложения:

certifichardetidnaurllib3

Еще одна проблема возникла. Моя просьба отправляется вAPI стека Exchange, который имеетhttps:// протокол. Вот ошибка:

SSLError: HTTPSConnectionPool(host='api.stackexchange.com', port=443): Max retries exceeded with url: /2.2/1?site=stackoverflow (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",))

ssl Модуль встроен в среду исполнения GAE Python, поэтому я поместил следующее вapp.yaml:

libraries:
- name: webapp2
  version: latest

- name: ssl
  version: latest

Это не сработало. Я получил ту же ошибку, что и раньше. Я скопировал папку модуля SSL в каталог своего приложения и сделалimport ssl вmain.py, но теперь он выдает исключение, требующее установки еще одного модуля:

File "/Users/williamqin/Projects/stackpromo/ssl/__init__.py", line 61, in <module>
import _ssl2          # if we can't import it, let the error propagate
ImportError: No module named _ssl2

Я искал по всей сети для_ssl2 Модуль Python, но я нигде не смог его найти!

Как правильно использоватьrequests модуль в Google App Engine?

Ответы на вопрос(1)

Ваш ответ на вопрос