Ответ 1
QtWebKit
получил устаревшее восходящее движение в Qt 5.5 и удален в 5.6.
Вы можете переключиться на PyQt5.QtWebEngineWidgets:
Это отменяет модуль QtWebKit и обеспечивает лучшее и актуальное поддержка функций HTML, CSS и JavaScript
Недавно я обновил PyQt5 с 5.5.1 до 5.6.0 с помощью 32-разрядного установщика Windows здесь: https://www.riverbankcomputing.com/software/pyqt/download5. Я также обновил свой питон с 3,4 до 3,5.
Когда я запускаю свой старый код (который раньше работал) с последней версией, я получаю исключение:
from PyQt5.QtWebKitWidgets import *
ImportError: No module named 'PyQt5.QtWebKitWidgets'
Все мои вызовы QT в моем питоне происходят последовательно и выполняются (и я знаю, что не должен импортировать *, но я думаю, что помимо этой проблемы здесь):
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebKitWidgets import *
Таким образом, импорт QtCore, QtGui и QtWidgets в порядке.
Кроме того, когда я ищу в источнике QtWebKitWidgets, появляется несколько ссылок на этот модуль.
Наконец мой путь к Python выглядит так:
C:\PYTHON35;C:\PYTHON35\DLLs;C:\PYTHON35\LIB;C:\PYTHON35\LIB\LIB-TK;
и путь к среде:
C:\Python35\Lib\site-packages\PyQt5;C:\Python35;C:\Python35\Lib;C:\Python35\Lib\site-packages;C:\Python35\Scripts ....
QtWebKit
получил устаревшее восходящее движение в Qt 5.5 и удален в 5.6.
Вы можете переключиться на PyQt5.QtWebEngineWidgets:
Это отменяет модуль QtWebKit и обеспечивает лучшее и актуальное поддержка функций HTML, CSS и JavaScript
Я просто отвечаю сейчас, если кто-то, как я, имел эту проблему: Я пытался запустить qutebrowser, и у него была та же ошибка, ответ прост, пакеты изменились. У вас есть два решения:
1)
pip install PyQtWebEngine
2)
pip install PyQt5==5.11.3
Надеюсь, это поможет в будущем
В PyQt5 "QtWebKitWidgets" больше не доступен. Вместо этого он заменяется на "QtWebEngineWidgets". Таким образом, вы должны внести это изменение в свой код.
Для дополнительной информации: http://doc.qt.io/qt-5/qtwebenginewidgets-qtwebkitportingguide.html
В PyQt5 "QtWebKitWidgets" устарела. Я просто заменяю эту строку
from PyQt5.*QtWebKitWidgets* import *QWebView*, *QWebPage*
from PyQt5.*QtWebKit* import *QWebSettings*
С этим кодом:
from PyQt5.QtWebEngineWidgets import QWebEngineView as QWebView,QWebEnginePage as QWebPage
from PyQt5.QtWebEngineWidgets import QWebEngineSettings as QWebSettings
Если вы действительно хотите использовать PyQt5.QtWebKitWidgets
, вы можете запустить его из командной строки:
pip install PyQtWebKit
и пусть он делает то, что делает.