Cannot import QtWebKitWidgets in PyQt5

Peter Bingham picture Peter Bingham · Jun 17, 2016 · Viewed 54.9k times · Source

I've recently upgraded PyQt5 from 5.5.1 to 5.6.0 using the Windows 32-bit installer here: https://www.riverbankcomputing.com/software/pyqt/download5. I've also upgraded my python from 3.4 to 3.5.

When I run my old code (which used to work) with the latest version I get an exception:

    from PyQt5.QtWebKitWidgets import *
ImportError: No module named 'PyQt5.QtWebKitWidgets'

All of my QT calls in my python occur consecutively and are (and I know I shouldn't be importing * but that's beside the issue here I think):

        from PyQt5.QtCore import *
        from PyQt5.QtGui import *
        from PyQt5.QtWidgets import *
        from PyQt5.QtWebKitWidgets import *

So the QtCore, QtGui and QtWidgets imports are all OK.

Also, when I search the source for QtWebKitWidgets there appears several references to this module.

Finally my python path looks like:

C:\PYTHON35;C:\PYTHON35\DLLs;C:\PYTHON35\LIB;C:\PYTHON35\LIB\LIB-TK;

and environment path:

C:\Python35\Lib\site-packages\PyQt5;C:\Python35;C:\Python35\Lib;C:\Python35\Lib\site-packages;C:\Python35\Scripts ....

Answer

IAmInPLS picture IAmInPLS · Jun 17, 2016

QtWebKit got deprecated upstream in Qt 5.5 and removed in 5.6.

You may want to switch to PyQt5.QtWebEngineWidgets :

This supercedes the QtWebKit module and provides better and up-to-date support for HTML, CSS and JavaScript features