Подключение к Firebase из Python Google App Engine

Я пытаюсь подключиться к Firebase из App Engine, но я получаю эту ошибку при попытке импортировать Firebase с помощью оболочки Python-Firebase:

File "C:_devPycharmProjectsmyappprojectproject_handler.py", line 31, in <module>
from firebase import firebase
File "C:_devPycharmProjectsmyappexternalfirebase__init__.py", line 3, in <module>
from .async import process_pool
File "C:_devPycharmProjectsmyappexternalfirebaseasync.py", line 1, in <module>
import multiprocessing
File "C:PYTHON27libmultiprocessing__init__.py", line 65, in <module>
from multiprocessing.util import SUBDEBUG, SUBWARNING
File "C:PYTHON27libmultiprocessingutil.py", line 40, in <module>
from subprocess import _args_from_interpreter_flags
ImportError: cannot import name _args_from_interpreter_flags

у других людей, похоже, есть тот же вопрос, но я нигде не мог найти ответа.

3 ответов


Python firebase по умолчанию использует многопроцессорный пакет для потоковой обработки. По умолчанию AppEngine блокирует все многопроцессорные вызовы. AppEngine выполняет свою собственную форму многопроцессорной обработки, создавая очереди задач и разворачивая другие экземпляры вашего приложения при загрузке.

Я создал python-firebase-gae пакета для решения этой проблемы.


сейчас python-firebase-gae проект, который основан на URL Fetch и не зависит от каких-либо ограниченных пакетов.


пакет python-firebase pip зависит от "запросы " пакет pip, который недоступен в GAE python. Доступен только urlfetch (docs https://cloud.google.com/appengine/docs/python/urlfetch/).

таким образом, вы можете реализовать свой собственный код python для выдачи запросов непосредственно в Firebase REST api с помощью urlfetch ... или чтобы сделать его многоразовым, вы или кто-то может иметь версию python-firebase, которая использует urlfetch вместо запрашивает библиотеку.