使用<from PyQt5.QtWebEngineWidgets import QWebEnginePage>用错误的名称调用ValueError:PyCapsule_GetPointer

Har*_*aru 3 errno spyder anaconda pyqt5 python-3.6

我自己已经解决了这个问题,但是我将这个问题交给其他人解决。我认为这种问题尽可能地好。而且SOF中似乎没有。

我更新spyderPyQt5

conda update spyder
Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: C:\Anaconda3

  added / updated specs:
    - spyder


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    anaconda-custom            |   py36h363777c_0           9 KB
    spyder-3.3.4               |           py36_0         2.6 MB
    spyder-kernels-0.4.4       |           py36_0          68 KB
    ------------------------------------------------------------
                                           Total:         2.7 MB

The following packages will be UPDATED:

  spyder                                       3.3.3-py36_0 --> 3.3.4-py36_0
  spyder-kernels                               0.4.2-py36_0 --> 0.4.4-py36_0

The following packages will be DOWNGRADED:

  anaconda                                   2019.03-py36_0 --> custom-py36h363777c_0
Run Code Online (Sandbox Code Playgroud)

当我尝试启动时spyder。从快捷方式图标,没有应用程序发生。所以我写了这个cmd。

 C:\Users\****>spyder
Run Code Online (Sandbox Code Playgroud)

但是我有这个错误


Traceback (most recent call last):
  File "C:\Anaconda3\Scripts\spyder-script.py", line 10, in <module>
    sys.exit(main())
  File "C:\Anaconda3\lib\site-packages\spyder\app\start.py", line 186, in main
    from spyder.app import mainwindow
  File "C:\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 90, in <module>
    from qtpy import QtWebEngineWidgets  # analysis:ignore
  File "C:\Anaconda3\lib\site-packages\qtpy\QtWebEngineWidgets.py", line 22, in <module>
    from PyQt5.QtWebEngineWidgets import QWebEnginePage
ValueError: PyCapsule_GetPointer called with incorrect name
Run Code Online (Sandbox Code Playgroud)

因此,我已经搜索了该页面

我遵循了解决方案。但这不是同一个问题。

发生下一个问题。

python: can't open file 'configure.py': [Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)

我该如何解决?


Python 3.6.8 |Anaconda custom (64-bit)| (default, Feb 21 2019, 18:30:04) [MSC v.1916 64 bit (AMD64)]

Har*_*aru 10

解决方案是降级PyQt5

pip install PyQt5==5.10.1
Collecting PyQt5==5.10.1
  Downloading https://files.pythonhosted.org/packages/a7/22/67cc2bac6ae2cd3a7eabb2a2e91638b94bdc6e0503747e49670ce44bb5b0/PyQt5-5.10.1-5.10.1-cp35.cp36.cp37.cp38-none-win_amd64.whl (81.0MB)
    100% |????????????????????????????????| 81.0MB 187kB/s
Requirement already satisfied: sip<4.20,>=4.19.4 in c:\anaconda3\lib\site-packages (from PyQt5==5.10.1) (4.19.8)
spyder 3.3.4 requires pyqtwebengine<5.13, which is not installed.
Installing collected packages: PyQt5
  Found existing installation: PyQt5 5.12.1
    Uninstalling PyQt5-5.12.1:
      Successfully uninstalled PyQt5-5.12.1
Successfully installed PyQt5-5.10.1
Run Code Online (Sandbox Code Playgroud)

发生此问题的原因是PyQt5我安装的版本超过的版本spyder

  • 太棒了!还有一件事。降级到PyQt5.10.1,然后启动spyder后,它抱怨缺少PyQtWebEngine。我通过“ pip install PyQtWebEngine”安装了它,然后spyder像冠军一样工作。 (2认同)
  • (*这里是 Spyder 维护者*)这确实是错误的,因为在使用 Anconda 时不能混合 pip 和 conda PyQt5 包。如果您不创建任何其他 conda 环境,这可以工作(有时在这种情况下甚至会失败),但一旦您这样做,事情就会严重破坏。 (2认同)