如何解释这种回溯?

2024-05-17 08:21:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在设置一个新的开发机器并安装了我的IDE pycharm。我将python安装到C:\Program (x86)\python27。但是当我启动我的gae服务器时,我得到了这个回溯。这是什么意思?在

pydev debugger: process 7576 is connecting

Traceback (most recent call last):
  File "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pydev\pydevd.py", line 2358, in <module>
    globals = debugger.run(setup['file'], None, None, is_module)
  File "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pydev\pydevd.py", line 1778, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line 83, in <module>
    _run_file(__file__, globals())
  File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line 79, in _run_file
    execfile(_PATHS.script_file(script_name), globals_)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\runtime.py", line 175, in <module>
    main()
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\runtime.py", line 155, in main
    sandbox.enable_sandbox(config)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 189, in enable_sandbox
    from google.appengine.runtime import runtime
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\runtime.py", line 40, in <module>
    from google.appengine.runtime import cgi
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\cgi.py", line 32, in <module>
    from email import feedparser
  File "C:\Program Files (x86)\python27\lib\email\feedparser.py", line 27, in <module>
    from email import message
  File "C:\Program Files (x86)\python27\lib\email\message.py", line 16, in <module>
    import email.charset
  File "C:\Program Files (x86)\python27\lib\email\charset.py", line 13, in <module>
    import email.base64mime
  File "C:\Program Files (x86)\python27\lib\email\base64mime.py", line 40, in <module>
    from email.utils import fix_eols
  File "C:\Program Files (x86)\python27\lib\email\utils.py", line 28, in <module>
    import socket
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 829, in load_module
    return self.import_stub_module(fullname)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 841, in import_stub_module
    __import__(fullname, {}, {})
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\dist27\socket.py", line 73, in <module>
    from _ssl import RAND_add, RAND_egd, RAND_status, SSL_ERROR_ZERO_RETURN, SSL_ERROR_WANT_READ, SSL_ERROR_WANT_WRITE, SSL_ERROR_WANT_X509_LOOKUP, SSL_ERROR_SYSCALL, SSL_ERROR_SSL, SSL_ERROR_WANT_CONNECT, SSL_ERROR_EOF, SSL_ERROR_INVALID_ERROR_CODE
ImportError: cannot import name RAND_egd
pydev debugger: process 2496 is connecting

Traceback (most recent call last):
  File "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pydev\pydevd.py", line 2358, in <module>
    globals = debugger.run(setup['file'], None, None, is_module)
  File "C:\Program Files (x86)\JetBrains\PyCharm 4.5.3\helpers\pydev\pydevd.py", line 1778, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line 83, in <module>
    _run_file(__file__, globals())
  File "C:\Program Files (x86)\Google\google_appengine\_python_runtime.py", line 79, in _run_file
    execfile(_PATHS.script_file(script_name), globals_)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\runtime.py", line 175, in <module>
    main()
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\runtime.py", line 155, in main
    sandbox.enable_sandbox(config)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 189, in enable_sandbox
    from google.appengine.runtime import runtime
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\runtime.py", line 40, in <module>
    from google.appengine.runtime import cgi
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\cgi.py", line 32, in <module>
    from email import feedparser
  File "C:\Program Files (x86)\python27\lib\email\feedparser.py", line 27, in <module>
    from email import message
  File "C:\Program Files (x86)\python27\lib\email\message.py", line 16, in <module>
    import email.charset
  File "C:\Program Files (x86)\python27\lib\email\charset.py", line 13, in <module>
    import email.base64mime
  File "C:\Program Files (x86)\python27\lib\email\base64mime.py", line 40, in <module>
    from email.utils import fix_eols
  File "C:\Program Files (x86)\python27\lib\email\utils.py", line 28, in <module>
    import socket
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 829, in load_module
    return self.import_stub_module(fullname)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py", line 841, in import_stub_module
    __import__(fullname, {}, {})
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\dist27\socket.py", line 73, in <module>
    from _ssl import RAND_add, RAND_egd, RAND_status, SSL_ERROR_ZERO_RETURN, SSL_ERROR_WANT_READ, SSL_ERROR_WANT_WRITE, SSL_ERROR_WANT_X509_LOOKUP, SSL_ERROR_SYSCALL, SSL_ERROR_SSL, SSL_ERROR_WANT_CONNECT, SSL_ERROR_EOF, SSL_ERROR_INVALID_ERROR_CODE
ImportError: cannot import name RAND_egd

如果我以管理员的身份运行pip install PyOpenSLL,那么我得到

^{pr2}$

Tags: inpyimportsslemailgooglelinefiles
2条回答

新增:

似乎您使用LibreSSl而不是OpenSSL。见Python: Issue 21356

在python shell中运行以下命令,检查是否使用LibreSSL:

from ssl import OPENSSL_VERSION; print OPENSSL_VERSION

旧版:

^{pr2}$

是你必须知道的。在相当简单的写作中,它意味着: “谷歌的应用引擎在模块\u ssl中找不到名为RAND_egd的名称”

尝试更新所有软件包。

从控制台尝试from _ssl Import RAND_egd,然后将结果放在这里。在

目前,公开的问题列表中没有提到RAND\u egd的bug。我建议使用filing a bug来解决这个问题,包括堆栈跟踪,并指出您在Windows8.1上看到了这个问题。包含指向此stackoverflow问题的链接。在

这仍然会给您留下一个直接的问题,所以考虑尝试这个实验:编辑google_appengine\google\appengine\dist27\socket.py并删除对RAND_egd的引用(保留原始行的一个注释掉,或者复制插座.py,以便您可以轻松恢复更改)。然后看看会发生什么。你可能会走运。请你回来报到。在

相关问题 更多 >