Registry / web-framework / pyqt6-webengine-qt6

pyqt6-webengine-qt6

JSON →
library6.11.2pypypi✓ verified 24d ago

PyQt6-WebEngine-Qt6 is a supplementary package containing the essential subset of a Qt installation specifically required by PyQt6-WebEngine. It typically installs automatically as a dependency when a user installs PyQt6-WebEngine, which provides Python bindings for the Qt WebEngine framework. This framework enables embedding web content in applications using a Chromium-based engine. The current version is 6.11.0, and its release cadence generally aligns with updates to PyQt6 and the underlying Qt WebEngine.

pip install PyQt6-WebEngine
INSTALL
IMPORT
SIG · PYQT6-WEBENGINE-QT
P
pyqt6-webengine-qt6
web-frameworkpythonv6.11.2
Install
6.8s avg
Import
Disk
540MB
Pass rate
5/ 10
Env Coverage5 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v6.11.2 · 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
musl
py 3.103.95 runs
build_error
glibc
py 3.103.95 runs
installs and imports cleanly · install 6.8s · import 0.000s · 544MB
540MB installed
● package 540MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

QWebEngineView
from PyQt6.QtWebEngineWidgets import QWebEngineView
from PyQt6.QtWidgets import QWebEngineView
In PyQt6, WebEngine components are in a dedicated submodule, not directly under QtWidgets or the main PyQt6 namespace.
QWebEnginePage
from PyQt6.QtWebEngineCore import QWebEnginePage
from PyQt6.QtWebEngineWidgets import QWebEnginePage
Many core WebEngine classes, including QWebEnginePage, moved from QtWebEngineWidgets to QtWebEngineCore in Qt6.
QUrl
from PyQt6.QtCore import QUrl

This quickstart demonstrates how to embed a basic web browser using `QWebEngineView` to display a URL. It initializes a `QApplication`, creates a `QWidget` to host the `QWebEngineView`, and sets a target URL. The `sys.exit(app.exec())` line starts the event loop, displaying the window.

import sys from PyQt6.QtWidgets import QApplication, QWidget, QVBoxLayout from PyQt6.QtWebEngineWidgets import QWebEngineView from PyQt6.QtCore import QUrl class SimpleBrowser(QWidget): def __init__(self): super().__init__() self.setWindowTitle('PyQt6 WebEngine Browser') self.setGeometry(100, 100, 1024, 768) layout = QVBoxLayout(self) self.webview = QWebEngineView() layout.addWidget(self.webview) # Load a URL (e.g., Google or your own site) self.webview.setUrl(QUrl('https://www.google.com')) self.setLayout(layout) if __name__ == '__main__': app = QApplication(sys.argv) browser = SimpleBrowser() browser.show() sys.exit(app.exec())
Debug
Known issues
breakingWhen migrating from PyQt5, the import structure for WebEngine classes has changed. Classes are now strictly separated into `PyQt6.QtWebEngineWidgets` (for widgets like `QWebEngineView`) and `PyQt6.QtWebEngineCore` (for core functionalities like `QWebEnginePage`, `QWebEngineProfile`). Direct imports from the main `PyQt6` namespace or `QtWidgets` for WebEngine components will fail.
fix
Update import statements: `from PyQt5.QtWebEngineWidgets import X` becomes `from PyQt6.QtWebEngineWidgets import X`, and `QWebEnginePage` (and similar core classes) should be imported from `PyQt6.QtWebEngineCore`.
affects: All PyQt6 versions when migrating from PyQt5.
breakingSeveral Qt WebEngine API methods have moved or changed signatures in Qt 6. For example, `QWebEnginePage::print()` no longer takes a callback and has moved to `QWebEngineView::print()`, signalling completion with `QWebEngineView::printFinished()`. Similarly, `QWebEngineDownloadItem` has been renamed to `QWebEngineDownloadRequest` and moved to `QtWebEngineCore`.
fix
Consult the official Qt 6 WebEngine documentation and PyQt6 examples for updated method calls and class locations. Refactor code to use new signals/slots and class names.
affects: All PyQt6 versions when migrating from PyQt5/Qt5 WebEngine.
gotchaThe method to start the application's event loop has changed from `app.exec_()` (used in older Python 2 compatible PyQt5 code) to `app.exec()` in PyQt6. While `app.exec()` is also available and preferred in modern PyQt5, using `app.exec_()` will raise an error in PyQt6.
fix
Always use `app.exec()` to start the application's event loop.
affects: All PyQt6 versions.
gotchaQWebEngineView does not automatically handle pop-up windows (e.g., those created by JavaScript `window.open()`). To support these, you must subclass `QWebEngineView` and reimplement its `createWindow()` method.
fix
Create a custom `QWebEngineView` subclass and override `createWindow()` to instantiate and return a new `QWebEngineView` (or a custom `WebPopupWindow`) for each new window request.
affects: All PyQt6-WebEngine versions.
gotchaUsers have reported performance issues such as laggy scrolling and jerky videos with specific Qt WebEngine versions (e.g., Qt 6.7.0-1) on certain platforms, particularly Linux/X11, and sometimes involving specific GPU drivers. This may manifest as 'glitching' or 'Z-fighting'.
fix
If encountering severe performance issues, try downgrading the `PyQt6-WebEngine-Qt6` package (or `PyQt6-WebEngine`) to an earlier minor version if possible. Report issues to the PyQt or Qt bug trackers, providing detailed system and GPU information. Disabling hardware acceleration might be a workaround in some cases.
affects: Specific versions of Qt WebEngine (e.g., 6.7.x) and associated PyQt6-WebEngine releases.
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'PyQt6.QtWebEngineWidgets'
The `PyQt6-WebEngine` package, which provides the `QtWebEngineWidgets` module and depends on `pyqt6-webengine-qt6`, is not installed in your Python environment.
fix
Install the `PyQt6-WebEngine` package using pip: `pip install PyQt6-WebEngine`
ImportError: DLL load failed while importing QtWebEngineCore: The specified module could not be found.
On Windows, this often indicates that required Visual C++ Redistributable runtime components are missing or that the native Qt WebEngine DLLs provided by `pyqt6-webengine-qt6` are not found or are corrupted.
fix
Install the latest Microsoft Visual C++ Redistributable for your system (usually x64) and ensure `PyQt6-WebEngine` is properly installed, possibly by reinstalling it.
qt.webenginecore: "Could not find QtWebEngineProcess.exe"
The application cannot locate or execute the necessary `QtWebEngineProcess` executable, which is provided by `pyqt6-webengine-qt6` and is crucial for rendering web content.
fix
Verify that `PyQt6-WebEngine` is fully and correctly installed. For deployed applications, ensure that `QtWebEngineProcess.exe` (on Windows) and the `webengine` plugins directory are present in the application's distribution.
Failed to load platform plugin "qtwebengine"
The application is unable to load the Qt WebEngine platform plugin, which means the necessary native components (DLLs/shared libraries) provided by `pyqt6-webengine-qt6` are either missing, inaccessible, or incompatible.
fix
Ensure `PyQt6-WebEngine` is correctly installed. For deployment, ensure the `platforms` and `webengine` plugin directories are correctly bundled with your application alongside the executable.
Upgrade
Version history
6.11.2latest on PyPI · released Aug 23, 2026
Audit
Dependencies
PyQt6requiredPyQt6-WebEngine is built on top of PyQt6, and this package provides the Qt runtime components for it.
Agent activity
31 hits · last 30 days
node
28
Resources
pyqt6-webengine-qt6 — pip install pyqt6-webengine-qt6 · libregistry