运行PyQt5浏览器脚本时出现“Python已停止工作”错误,原因是什么?
问题分析与解决建议
这个错误不是python.exe本身的问题,大概率出在PyQt5的QWebEngine组件上,以下是具体原因和解决方向:
版本不兼容:PyQt5的QWebEngine对Python版本有要求,比如高版本Python(3.11及以上)搭配旧版PyQt5(5.14及更早)容易出现崩溃。解决:卸载现有PyQt5,安装适配的版本,执行命令:
pip uninstall pyqt5 pyqtwebengine pip install pyqt5==5.15.9 pyqtwebengine==5.15.9QWebEngine组件缺失:单独安装
pyqt5时可能没有包含完整的QWebEngine运行依赖,导致启动崩溃。解决:单独安装完整的webengine组件:pip install pyqtwebengine系统环境问题:QWebEngine基于Chromium内核,老旧的显卡驱动、系统权限不足都可能导致崩溃。解决:更新显卡驱动,尝试以管理员身份运行脚本。
虚拟环境异常:如果用了虚拟环境,可能组件安装不完整或路径异常。解决:删除现有虚拟环境,重新创建后再安装PyQt5和pyqtwebengine。
验证方法
先运行一个不含QWebEngine的基础PyQt5脚本,确认python.exe和基础PyQt5功能正常:
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel class TestWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("PyQt5 Test") self.setCentralWidget(QLabel("运行正常")) app = QApplication([]) window = TestWindow() window.show() app.exec_()
如果这个脚本能正常显示窗口,就可以确定问题完全出在QWebEngine相关的配置上。
内容的提问来源于stack exchange,提问作者account bus
相关产品推荐
相关产品推荐

