Install & Compatibility
Where this runs
tested against v5.15.19 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.940 runs
build_error
glibcpy 3.10–3.940 runs
installs and imports cleanly · install 4.8s · import 0.000s · 445MB
443MB installed
● package 443MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
QWebEngineView
✓ from PyQt5.QtWebEngineWidgets import QWebEngineView
✗ from PyQt5.QtWebEngineWidgets import QWebEngineView
This quickstart demonstrates how to create a simple web browser view within a PyQt5 application, displaying Google's homepage.
import sys
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtCore import QUrl
def main():
app = QApplication(sys.argv)
browser = QWebEngineView()
browser.setUrl(QUrl('https://www.google.com')) # For PyQtWebEngine 5.15.x, setUrl is still commonly used.
browser.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Debug
Known issues
gotchaInstalling `pyqtwebengine-qt5` does not automatically install `PyQt5`. You must install `PyQt5` separately if it's not already part of your environment.fixEnsure `pip install pyqt5` has been run before or alongside `pip install pyqtwebengine-qt5`.
affects: All versions
gotchaAll PyQt applications, including those using PyQtWebEngine, require a `QApplication` instance to be created and an event loop to be run (`app.exec_()`) for the GUI to display and interact correctly.fixAlways initialize `QApplication(sys.argv)` and call `sys.exit(app.exec_())` in your main application entry point.
affects: All versions
deprecatedThe `QWebEngineView.setUrl()` method is technically deprecated in newer Qt versions (and by extension, PyQt) in favor of `QWebEngineView.load(QUrl)`. While it still works in PyQt5, it's good practice to use `load()`.fixReplace `browser.setUrl(QUrl('...'))` with `browser.load(QUrl('...'))` for forward compatibility, though `setUrl` remains functional in 5.15. affects: Qt 5.15+, PyQtWebEngine 5.15+
Upgrade
Version history
5.15.19latest on PyPI · released May 21, 2026
Audit
Dependencies
PyQt5requiredProvides the core Qt5 bindings that PyQtWebEngine integrates with. pyqtwebengine-qt5 requires PyQt5.