Google App Engine на Python «Ошибка импорта: нет модуля с именем google.appengine.ext» - PullRequest
1 голос
/ 09 февраля 2012

Я пытаюсь настроить исходный файл Python для Google Cloud.Я установил GSUtil на свою MAC OS 10.6 и установил путь для файлов, как указано на странице добавления этой команды (export PYTHONPATH = $ {PYTHONPATH}: $ HOME / gsutil / boto: $ HOME / gsutil) в .bash_profile в разделедомашний каталог.

Затем я запустил следующий код:

#!/usr/bin/python

import StringIO
import os
import shutil
import tempfile
import time
from oauth2_plugin import oauth2_plugin

import boto

# URI scheme for Google Cloud Storage.
GOOGLE_STORAGE = 'gs'
# URI scheme for accessing local files.
LOCAL_FILE = 'file'

И компилятор выдал мне ошибку, говорящую

>>> [evaluate gs.py]
Traceback (most recent call last):
  File "/Volumes/WingIDE-101-4.0.0/WingIDE.app/Contents/MacOS/src/debug/tserver/_sandbox.py", line 8, in <module>
  File "/Users/lsangin/oauth2_plugin.py", line 18, in <module>
  File "/Users/lsangin/google_appengine/cloudauth/oauth2client/appengine.py", line 24, in <module>
    from google.appengine.ext import db
ImportError: No module named google.appengine.ext
>>> from google.appengine.ext

Может ли кто-нибудь помочь мне спроблема?(Извините, я новичок!) Заранее спасибо.

Ответы [ 4 ]

1 голос
/ 11 февраля 2012

Когда вы запускаете или развертываете свой код как приложение Google App Engine, инструменты AE гарантируют, что у вас есть доступ к определенным модулям AE (например, google.appengine.ext), но похоже, что вы пытаетесь запустить этот скрипт как отдельная программа, вне движка приложения. Если это так, вам может не понадобиться модуль appengine (сложно сказать наверняка, не видя больше вашего кода). Если я прав, и это небольшой тестовый код для запуска вне AE, попробуйте закомментировать импорт и ссылки на отсутствующий модуль. Как только вы это заработаете, раскомментируйте этот код, если / когда вы будете готовы попробовать свою программу в ядре приложения (либо в локальной среде разработки, либо в размещенной службе).

0 голосов
/ 26 сентября 2013

У меня была такая же проблема - я решил ее, добавив каталог к ​​своему PYTHONPATH: https://stackoverflow.com/a/19019234/1741654

0 голосов
/ 18 апреля 2012

Похоже, что вы импортируете неправильный oauth2_plugin, потому что тот в gsutil / oauth2_plugin не зависит от движка приложения.

У меня была такая же проблема, потому что я ранее тестировал с gsutil / cloudauth / oauth2_plugin.py, и он все еще был в PYTHONPATH.

Попробуйте обновить PYTHONPATH с помощью:

PYTHONPATH=""
source ~/.bashrc
0 голосов
/ 09 февраля 2012

Вы переместили (или скопировали) oauth2_plugin.py в другое место?То, что у вас есть в этой трассировке стека, показывает cloudauth/oauth2_plugin.py (это плагин, который работает с ядром приложения), а не oauth2_plugin/oauth2_plugin.py (который, вероятно, тот, который вам нужен).

Какой у вас полный PYTHONPATH?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...