【问题标题】:All of a sudden, Webapp2 cannot be found by python interpreter突然,python解释器找不到Webapp2
【发布时间】:2014-01-30 23:26:01
【问题描述】:

我在 Windows 上运行最新的 Python 2.7 和 Google App Engine SDK。直到今晚一切正常,现在 python 在我拥有的每个应用程序中都抛出关于 webapp2 的导入错误,并且所有本地项目都返回空白页。

我看过所有关于路径等的帖子,但它不起作用。前几天我安装了 Bluestacks,我认为 POS 做了一些事情。我已经完成了几次卸载和重新安装所有与 python 相关的操作,但都无济于事。

如果有帮助,这是我的路径字符串

(用户路径)

D:\程序文件
(x86)\Google\google_appengine\lib\;C:\Python27\;C:\Python27\Scripts\;D:\Program 文件 (x86)\Google\google_appengine\

(系统路径)

C:\Python27\;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program 文件\英特尔\iCLS 客户端\;C:\程序文件 (X86)\AMD APP\BIN\X86_64;C:\PROGRAM 文件 (X86)\AMD APP\BIN\X86;C:\PROGRAM 文件\常用文件\微软共享\WINDOWS LIVE;C:\程序文件 (X86)\常用文件\微软共享\WINDOWS 直播;%SYSTEMROOT%\SYSTEM32;%SYSTEMROOT%;%SYSTEMROOT%\SYSTEM32\WBEM;%SYSTEMROOT%\SYSTEM32\WINDOWSPOWERSHELL\V1.0\;D:\PROGRAM 文件\ATI TECHNOLOGIES\ATI.ACE\CORE-STATIC;C:\程序文件 (X86)\WINDOWS LIVE\SHARED;C:\PROGRAM 文件 (X86)\COMMON 文件\INTUIT\QBPOSSDKRUNTIME;C:\程序文件(X86)\GOOGLE\GOOGLE APPS SYNC\;C:\PROGRAM 文件 (X86)\GOOGLE\GOOGLE 应用迁移\;C:\PROGRAM 文件\通用文件\NEARECEIPTS\驱动程序\M12\;D:\程序文件 (X86)\GOOGLE\GOOGLE_APPENGINE\;D:\程序文件 (X86)\GOOGLE\GOOGLE_APPENGINE\LIB\;;D:\程序文件 (X86)\QUICKTIME\QTSYSTEM\;C:\Program Files\Intel\Intel(R) 管理 引擎组件\DAL;C:\Program Files\Intel\Intel(R) Management 引擎组件\IPT;C:\Program Files (x86)\Intel\Intel(R) Management 引擎组件\DAL;C:\Program Files (x86)\Intel\Intel(R) Management 引擎组件\IPT;C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

我创建了一个 PYTHONPATH 变量:

D:\Program Files (x86)\Google\google_appengine\lib;

我在 Aptana 或命令行中运行任何东西时遇到的错误:

Traceback(最近一次调用最后一次):文件“D:\Dropbox\Dropbox\Python Files\Udacity Python\Blog\Blog\main.py”,第 17 行,在 import webapp2 ImportError: No module named webapp2

是否有我现在缺少的环境变量 GAE 集?请帮忙,我无能为力。

谢谢!

更新

响应jacek2v,输出为

C:\Python27>python "D:\Program Files (x86)\Google\google_appengine\dev_appserver .py" “D:\Dropbox\Dropbox\Python 文件\Udacity Python\blog\blog\main.py” Traceback(最近一次调用最后一次):文件“D:\ Program Files (x86)\Google\google_appengine\dev_appserver.py",第 1 97 行,在 _run_file(file, globals()) 文件“D:\Program Files (x86)\Google\google_appengine\dev_appserver.py”,第 1 93 行,在 _run_file execfile(script_path, globals_) 文件 "D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\devappserver2.py",第 872 行,在 main() 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\devappserver2.py",第 865 行,在 main dev_server.start(options) 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\devappserver2.py",第 657 行,开始 options.yaml_files) 文件 "D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\application_configuration.py",第 549 行,在 init 中 module_configuration = ModuleConfiguration(yaml_path) 文件 "D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\application_configuration.py",第 82 行,在 init 中 self._yaml_path) 文件 "D:\Program Files (x86)\Google\google_appengine\google\appengine\tools\de vappserver2\application_configuration.py",第 266 行,在 _parse_configuration 返回 appinfo_includes.ParseAndReturnIncludePaths(f) 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\api\appi nfo_includes.py”,第 63 行,在 ParseAndReturnIncludePaths appyaml = appinfo.LoadSingleAppInfo(appinfo_file) 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\api\appi nfo.py", 行 1756,在 LoadSingleAppInfo 中 listener.Parse(app_info) 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\api\yaml _listener.py”,第 226 行,在 Parse 中 self._HandleEvents(self._GenerateEventParameters(stream, loader_class)) 文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\api\yaml _listener.py”,第 172 行,在 _HandleEvents 中 对于事件中的事件:文件“D:\Program Files (x86)\Google\google_appengine\google\appengine\api\yaml _listener.py”,第 212 行,在 _GenerateEventParameters 引发 yaml_errors.EventListenerYAMLError(e) google.appengine.api.yaml_errors.EventListenerYAMLError:映射 “D:\Dropbox\Dropbox\Python 中不允许使用值 Files\Udacity Python\blog\blog\main.py”,第 19 行,第 42 列

这是一个输出一行的简单程序。这是main.py文件

导入 webapp2

class MainHandler(webapp2.RequestHandler): ***这是第 19 行,第 42 列,根据上述错误,为了清楚起见,我省略了上面的 cmets。

def get(self):
    self.response.write('Bloogggger')

app = webapp2.WSGIApplication([ ('/', MainHandler),('/', Blog, '/'),('/blog/', newpost ) ], debug=True)

这是 app.yaml ***它在文件中的格式和缩进正确,我无法将其正确粘贴到此处

应用程序:wpablog2014 版本:1 运行时:python27 api_version: 1 线程安全:是的

处理程序: - 网址:/favicon.ico
静态文件:favicon.ico
上传:favicon.ico

  • 网址:.*
    脚本:main.app

库: - 名称:webapp2
版本:“2.5.2”

【问题讨论】:

  • 能把python --version的结果加起来吗?
  • 让我们开始修复命令行。尝试从命令行启动您的应用: path_to_python\python.exe full_path_to_google_appengine\dev_appserver.py full_path_to_your_project 结果是什么?
  • jarondl,python版本为2.7.6。 jacek2v,我在问题中添加了您要求的内容。谢谢
  • OP 说这是一个配置问题,重新安装 Python 解决了它。我投票决定关闭它。

标签: python google-app-engine python-2.7 aptana3


【解决方案1】:

raise yaml_errors.EventListenerYAMLError(e)

您的问题出在app.yaml 文件上:

您的错误在这里,语法错误。 - 转到下一行,缩进 2 个空格:

handlers: - url: /favicon.ico #wrong
static_files: favicon.ico #wrong
upload: favicon.ico #wrong

url: .*
script: main.app#wrong
libraries: - name: webapp2 #very wrong
version: "2.5.2" #wrong

正确的例子:

libraries:
- name: jinja2
  version: latest

- name: webapp2
  version: latest

app.yaml 文件中的语法很严格。请阅读here 了解其语法和here 了解应用引擎配置。

顺便说一句,当遇到问题时,请尝试阅读关键字的日志。日志是你的朋友。

【讨论】:

  • 就像我上面提到的,YAML 文件的格式正确,我无法使用块引用正确复制和粘贴它。这发生在我所有的项目中,所以不幸的是它不仅仅是这个文件。
  • @Delecron 清楚地表明从您的应用配置中读取 app.yaml 时开始的错误状态。再检查一遍。
【解决方案2】:

这肯定是配置问题。多个应用程序一夜之间都没有工作,有些几周没有被触及。我要把机器弄掉,然后再试一次。谢谢大家。

【讨论】:

  • 我擦除了python安装并重新开始。
猜你喜欢
  • 2019-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-12
  • 2022-09-26
  • 2022-01-21
  • 1970-01-01
相关资源
最近更新 更多