Linux(Ubuntu)下PyQt WebEngineView加载本地HTML文件及显示空白问题

1.加载本地Html网页

 1 import sys
 2 from PyQt5.QtCore import *
 3 from PyQt5.QtGui import *
 4 from PyQt5.QtWidgets import *
 5 from PyQt5.QtWebEngineWidgets import *
 6 
 7 class MainWindow(QMainWindow):
 8     def __init__(self):
 9         super(MainWindow, self).__init__()
10         self.setWindowTitle('加载本地网页')
11         self.setGeometry(70,70,555,330)#窗口的初始位置和大小
12         self.browser=QWebEngineView()
13         #加载本地html
14        self.browser.load(QUrl(QFileInfo("./html/aa.html").absoluteFilePath()))
15         self.setCentralWidget(self.browser)
16 
17 if __name__ == '__main__':
18     app=QApplication(sys.argv)
19     win=MainWindow()
20     win.show()
21     app.exit(app.exec_())

  代码在win下可以正常加载运行,但是移植到Linux下缺加载不出来,一直显示空白。

 

2.空白问题解决

1 load(QUrl(QFileInfo(‘xxx.html’).absoluteFilePath()))

  其实是加载html文件时使用相对路径还是绝对路径的问题,因此修改代码为如下:

1 load(QUrl(“file://’+QFileInfo(‘xxx.html’).absoluteFilePath()))

  同时,还要检查是否安装了PyQt5-stubs环境,如果没有该包也仍旧无法正常显示。

1 pip install PyQt5-stubs

  成功显示了本地HTML文件。

posted @ 2022-02-25 16:18  缓下脚步  阅读(1308)  评论(0编辑  收藏  举报