remote_api_stub的路径问题

时间:2015-07-12 17:24:24

标签: python google-app-engine

我正在关注Google的文档here以使用remote_api_stub

我在Python shell中输入以下两行:

sys.path.insert(0, "/Users/joneill/google-cloud-sdk/platform/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine")
from google.appengine.ext.remote_api import remote_api_stub

然后我收到错误:

>>> from google.appengine.ext.remote_api import remote_api_stub                                                                               Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/joneill/google-cloud-sdk/platform/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 76, in <module>
    import yaml
ImportError: No module named yaml

然后我可以像这样添加yaml的路径:

sys.path.insert(0, "/Users/joneill/google-cloud-sdk/platform/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/yaml/lib")

但后来又出现了另一个导入错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/joneill/google-cloud-sdk/platform/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 95, in <module>
    from google.appengine.tools import appengine_rpc
  File "/Users/joneill/google-cloud-sdk/platform/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appengine_rpc.py", line 25, in <module>
    import fancy_urllib
ImportError: No module named fancy_urllib

有没有一种简单的方法可以在我的道路上获得我需要的一切?

1 个答案:

答案 0 :(得分:3)

不。这是GAE中较不受欢迎的角落之一(本身就是谷歌最不受欢迎的角落之一)。幸运的是,20131230063502是您需要手动添加到路径中的唯一其他内容。

我还想在尝试导入remote_api_stub之前确保fancy_urllib中有正确的google。你看对了 - 谷歌有两个不同的包,可以作为PATH存在于路径中。

这是我的模块google的重要部分,它可以解决设置init_remote_api的所有奇怪问题:

remote_api