Ошибка импорта: нет модуля с именем "PyQt5.QtWebEngineWidgets"
Я пытаюсь запустить скрипт Python, используя PyQt5 QtWebEngineWidgets, но он выдает ошибки:
from PyQt5.QtWebEngineWidgets import (
ImportError: No module named 'PyQt5.QtWebEngineWidgets'
Я думаю, что отсутствует пакет, но какой? python3-pyqt5.qtwebkit
установлено.
Как заставить это работать?
6 ответов
Я не уверен на 100%, что это обращается к сообщению об ошибке OP, но по крайней мере для Ubuntu 17.04 я успешно запустил:
apt-get install python3-pyqt5.qtwebengine
Это приводит к множеству зависимостей, в том числе libqt5webenginecore5
, libqt5webenginewidgets5
, python3-pyqt5.qtwebchannel
а также python3-pyqt5.qtwebengine
,
Я не знаю, как это связано с тем, что ответ компилятора на QtWebEngine не был упакован для Ubuntu, но он работал для меня без компиляции Qt/PyQt.
У меня была такая же проблема, когда я пытался запустить Spyder в первый раз. Я использую дистрибутив Miniconda на Mac. Я должен был установить оба, чтобы я мог пообедать Spyder
pip install PyQtWebEngine
pip install PyQt5
Я надеюсь, что это поможет.
Скрипту нужен QtWebEngine, а не QtWebKit.
К сожалению, это не упаковано для Debian / Ubuntu, поэтому единственный способ запустить его - это скомпилировать Qt и PyQt самостоятельно (что может быть немного неприятно).
Я установил python3-pyqt5.qtmultimedia
sudo apt install python3-pyqt5.qtmultimedia
в ксениале (потому что python3-pyqt5.qtwebengine
не был найден, поэтому я искал все подходящие шаблоны python3-pyqt5
а также apt-cache search
нашел этот среди других, которые мне показались актуальными.
Теперь я могу использовать ffmpegconverter
снова! (Маленький, который делает великие дела, который я собрал вручную).
Если вы попали сюда и используете 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
Если вы попали сюда и используете 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 теперь должно работать)
Я исправил это, выполнив эту команду:
pip3 uninstall pyqt5
Источник: https://bugs.launchpad.net/ubuntu/+source/openshot-qt/+bug/1814520
Если вы используете Windows 10 с 64-разрядной версией Python 3.8.0, я обнаружил, что это работает:
pip uninstall PyQt5
pip uninstall PyQtWebEngine
pip install PyQt5==5.13
pip install PyQtWebEgine
Теперь ваш код не будет жаловаться на ошибку импорта QtWebEngineWidgets.