Ошибка импорта: нет модуля с именем «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.

JonBrave
источник
Это решило мою проблему с использованием карты памяти 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снова! (Маленький, который делает великие дела, который я собрал вручную).

user292507
источник
Но какое это имеет отношение к моему вопросу?
Майкл
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
mlaventure
источник
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
источник
Можете ли вы расширить свой ответ и показать команды, необходимые для этого?
Кристофер Айвс
Готово, извините, это заняло так много времени
AntonOfTheWoods
0

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

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

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

EnjoysMath
источник