「Qt」- WebKit and WebEngine @20210308

内容简介

本部分介绍QtWebKit以及QtWebEngine相关的技术。但是,本文更侧重于QtWebEngine技术,因为在Qt5.6中移除了QtWebKit模块。

另外,本部分的内容更侧重于爬虫,因为这些技术是在写爬虫的时候才学习的(反爬虫技术再牛,也得让用户可以正常访问,不是么?那……我们就做一个正常的用户)。

# QtWebKit and Qt WebEngine

根据官方所述「QtWebKit got deprecated upstream in Qt 5.5 and removed in 5.6」,所以从后面开始,我们整体基于QtWebEngine展开,极少涉及与QtWebKit相关的技术。

# 官方文档

不管是PyQt还是PySide模块,它们的文档都不够详尽。而PySide的文档明显是从Qt的文档里复制过来的。

如果要使用这些API库:「详细描述」还要参考Qt官方文档,但是「函数参数类型」可以参考这些文档。

Qt for Python/WebEngine

 

Qt WebEngine Debugging and Profiling

# PyQt5

PyQt v5.13 Reference Guide / QtWebEngineWidgets

# 使用WebEngine构建应用

import sys
from PyQt5.QtCore import *
from PyQt5.QtWebEngineWidgets import *
from PyQt5.QtWidgets import QApplication

app = QApplication(sys.argv)

web = QWebEngineView()
web.load(QUrl("https://www.example.com"))
web.show()

sys.exit(app.exec())

附加说明

# Get Html element value with QWebEngine
在QtWebEngine中,如果要获取页面的元素,需要通过QWebEnginePagerunJavaScript方法。

# Missing methods for QWebEnginePage with QWebEngineCallback
在PySide2中,没有toHtml方法。

相关示例

# WebEngine Quick Nano Browser
使用QML语言创建一个浏览器。

# WebEngine Content Manipulation Example
向页面中注入JQuery库,操作页面中的内容。

# WebEngine Markdown Editor Example
使用QWebChannel创建Markdown编辑器。

相关文章

「Qt」- PyQt and PySide

参考文献

Quick Tutorial: PyQt 5 Browser
Python Qt5 - QtWebEngine example.
Cannot import QtWebKitWidgets in PyQt5
New Features in Qt 5.6


posted @ 2021-03-08 17:35  研究林纳斯写的  阅读(270)  评论(0编辑  收藏  举报