ImportError:DLL加载失败-尝试导入spynner时



当我运行导入spynner的代码时,我会得到以下错误:

> python .spynner-test.py
Traceback (most recent call last):
  File ".spynner-test.py", line 10, in <module>
    import spynner
  File "C:Anacondalibsite-packagesspynner__init__.py", line 2, in <module>
    from browser import *
  File "C:Anacondalibsite-packagesspynnerbrowser.py", line 56, in <module>
    from PyQt4.QtNetwork import QNetworkCookie, QNetworkAccessManager, QSslConfiguration, QSslCipher
ImportError: DLL load failed: The specified procedure could not be found.

有趣的是,我可以在正常的python shell中导入这些东西,而不会有任何问题:

> python
Python 2.7.5 |Anaconda 1.9.2 (64-bit)| (default, Jul  1 2013, 12:37:52) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from PyQt4.QtNetwork import QNetworkCookie, QNetworkAccessManager, QSslConfiguration, QSslCipher
>>>

import spynner失败后,

> python
Python 2.7.5 |Anaconda 1.9.2 (64-bit)| (default, Jul  1 2013, 12:37:52) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import spynner
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:Anacondalibsite-packagesspynner__init__.py", line 2, in <module>
    from browser import *
  File "C:Anacondalibsite-packagesspynnerbrowser.py", line 56, in <module>
    from PyQt4.QtNetwork import QNetworkCookie, QNetworkAccessManager, QSslConfiguration, QSslCipher
ImportError: DLL load failed: The specified procedure could not be found.
>>> from PyQt4.QtNetwork import QNetworkCookie, QNetworkAccessManager, QSslConfiguration, QSslCipher
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified procedure could not be found.
>>>

好吧,我想明白了。问题是spynner首先尝试导入PySide,但在从PyQt4.QtNetwork导入QSslConfiguration时出错。然后它切换到PyQt4,显然之前导入的PySide使PyQt4导入失败。当我删除browser.py中的try:部分时,我可以很好地导入spynner

最新更新