Ошибка импорта: нет модуля с именем «PyQt5.QtWebEngineWidgets»


11

Я пытаюсь запустить скрипт Python, используя PyQt5 QtWebEngineWidgets, но он выдает ошибки:

  from PyQt5.QtWebEngineWidgets import (
ImportError: No module named 'PyQt5.QtWebEngineWidgets'

Я думаю, что отсутствует пакет, но какой? python3-pyqt5.qtwebkitустановлен.

Как заставить это работать?

Ответы:


5

Я не уверен на 100%, что это обращается к сообщению об ошибке OP, но по крайней мере для Ubuntu 17.04 я успешно запустил:

apt-get install python3-pyqt5.qtwebengine

Это приводит в грузах зависимостей, в том числе libqt5webenginecore5, libqt5webenginewidgets5, python3-pyqt5.qtwebchannelи python3-pyqt5.qtwebengine.

Я не знаю, как это связано с тем, что ответ компилятора на QtWebEngine не был упакован для Ubuntu, но он работал для меня без компиляции Qt / PyQt.


Это решило мою проблему с использованием карты памяти Anki на Debian
zhazha

Я пометил 16.04, так что это не совсем ответ, но приятно знать, что он доступен в текущей версии LTS (18.04 тоже есть).
Майкл

4

Скрипту нужен QtWebEngine, а не QtWebKit.

К сожалению, это не упаковано для Debian / Ubuntu , поэтому единственный способ запустить его - это скомпилировать Qt и PyQt самостоятельно (что может быть немного болезненно).


Я тоже так думаю ... :(
Майкл

Как насчет Windows?
Джонатан

4

Я установил python3-pyqt5.qtmultimedia

sudo apt install python3-pyqt5.qtmultimedia

в Xenial (потому что python3-pyqt5.qtwebengineне был найден, поэтому я искал все подходящие шаблоны python3-pyqt5и apt-cache searchнашел этот среди других, которые мне показались актуальными.

Теперь я могу использовать ffmpegconverterснова! (Маленький, который делает великие дела, который я собрал вручную).


Но какое это имеет отношение к моему вопросу?
Майкл

3

Если вы попали сюда и используете pip - я не исследовал полностью, но я получил именно это при запуске Anki с момента обновления в pip до PyQT5 5.12. Размеры пакетов для 5.11.3 и 5.12 сильно различаются - 5.11.3 весит 118 МБ, а 5.12 - только 61 МБ. Принудительная установка 5.11.3 устранила проблему. Я предполагаю, что это больше не входит в PyQT5 в pip, и должно быть установлено как отдельное требование.

Именно в примечаниях к выпуску они переместили веб-виджеты в другой пакет. Просто беги:

pip install PyQtWebEngine

3

У меня была такая же проблема, когда я пытался запустить Spyder в первый раз. Я использую дистрибутив Miniconda на Mac. Я должен был установить оба, чтобы я мог пообедать Spyder

pip install PyQtWebEngine
pip install PyQt5

Я надеюсь, что это поможет.


2

Если вы попали сюда и используете pip - я не исследовал полностью, но я получил именно это при запуске Anki с момента обновления в pip до PyQT5 5.12. Размеры пакетов для 5.11.3 и 5.12 сильно различаются - 5.11.3 весит 118 МБ, а 5.12 - только 61 МБ. Принудительная установка 5.11.3 устранила проблему. Я предполагаю, что это больше не входит в PyQT5 в pip, и должно быть установлено как отдельное требование.

pip uninstall PyQt5
pip install PyQt5==5.11.3

(Anki's require.txt теперь обновлен, так что вытащить последнюю версию из Github теперь должно работать)


Можете ли вы расширить свой ответ и показать команды, необходимые для этого?
Кристофер Айвс

Готово, извините, это заняло так много времени
AntonOfTheWoods


0

Если вы работаете в Windows 10 с 64-битной версией Python 3.8.0, я обнаружил, что это работает:

pip uninstall PyQt5
pip uninstall PyQtWebEngine
pip install PyQt5==5.13
pip install PyQtWebEgine

Теперь ваш код не будет жаловаться на ошибку импорта QtWebEngineWidgets.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.