class QWebEngineView#

QWebEngineView 类提供了一个用于查看和编辑网页的部件。更多...

Inheritance diagram of PySide6.QtWebEngineWidgets.QWebEngineView

摘要#

属性#

  • hasSelection - 是否此页包含选中内容

  • icon - 与当前查看的页面相关联

  • iconUrl - 与当前查看的页面相关联的图标 URL

  • selectedText - 当前选中的文本

  • title - 页面的标题,如 HTML <title> 元素所定义

  • url - 当前查看的网页 URL

  • zoomFactor - 视图的缩放因子

方法#

虚拟方法#

槽(a class="headerlink" href="#slots" title="链接到本标题">#

信号(a class="headerlink" href="#signals" title="链接到本标题">#

静态函数(a class="headerlink" href="#static-functions" title="链接到本标题">#

注意

此文档可能包含从 C++ 自动翻译成 Python 的代码片段。我们始终欢迎对代码片段的翻译贡献。如果您发现翻译问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来告知我们

详细说明#

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

WebView 是 Qt WebEngine 网页浏览模块的主要小部件组件。它可用于各种应用程序中以实时显示来自互联网的网页内容。

可以使用 load() 函数将网页加载到网页视图中。始终使用 GET 方法加载 URL。

与所有 Qt 小部件一样,必须调用 show() 函数以显示网页视图。下面的代码片段说明了这一点

view = QWebEngineView()
view.load(QUrl("https://qt-project.org/"))
view.resize(1024, 750)
view.show()

或者,可以使用 setUrl() 加载网站。如果您有现成的 HTML 内容,您也可以使用 setHtml()

loadStarted() 信号在视图开始加载时发出,而 loadProgress() 信号在网页视图的某个元素完成加载时发出,例如内嵌的图像或脚本。当视图完全加载完毕后,会发出 loadFinished() 信号。它的参数要么是 true,要么是 false,表示加载是否成功或失败。

page() 函数返回一个指向 网页 对象的指针。一个 QWebEngineView 包含一个 QWebEnginePage ,它反过来允许访问页面上下文中的 QWebEngineHistory

HTML文档的标题可以使用 title() 属性访问。此外,网站可以指定一个图标,可以使用 icon() 或其 URL 使用 iconUrl() 属性访问。如果标题或图标更改,将发出相应的 titleChanged()iconChanged()iconUrlChanged() 信号。 zoomFactor() 属性可以通过缩放因子放大网页内容。

小部件具有定制的上下文菜单,适用于当前元素,并包含在浏览器中有用的操作。对于自定义上下文菜单或嵌入到菜单或工具栏中的操作,可以通过 pageAction() 获取单个操作。网页视图维护返回操作的状体,但允许修改操作属性,如文本或图标。操作语义也可以通过 triggerPageAction() 直接触发。

如果您想为允许用户打开新窗口的网站提供支持,例如弹出窗口,您可以继承 QWebEngineView 并重新实现 createWindow() 函数。

另请参阅

WebEngine Widgets Simple Browser Example WebEngine Content Manipulation Example

注意

当使用 from __feature__ import true_property 时,可以直接使用属性,否则可以通过访问器函数使用属性。

property hasSelectionᅟ: bool#

此属性代表该页面是否包含所选内容。

默认情况下,此属性为 false

另请参阅

selectionChanged()

访问函数
property iconᅟ: QIcon#

此属性代表当前查看的页面对应的图标。

默认情况下,此属性包含一个空图标。

访问函数
属性 iconUrlᅟ: QUrl#

此属性保存当前正在查看的页面的关联图标URL。

默认情况下,此属性包含一个空URL。

访问函数
属性 selectedTextᅟ: str#

此属性保存当前选中的文本。

默认情况下,此属性包含一个空字符串。

访问函数
属性 titleᅟ: str#

此属性保存由HTML <title>元素定义的页面标题。

等价于 title() .

另请参阅

titleChanged()

访问函数
属性 urlᅟ: QUrl#

此属性保存当前正在查看的网页URL。

设置此属性将清除视图并加载URL。

默认情况下,此属性包含一个空、无效URL。

另请参阅

load() urlChanged()

访问函数
属性 zoomFactor: float#

此属性保存视图的缩放因子。

有效值范围是0.255.0。默认因子为1.0

访问函数
__init__(profile[, parent=None])#
参数:

使用父对象parent,用profile构建一个空白的网页视图。

注意

profile对象的所有权未被接收,并且其寿命应超过视图。

另请参阅

load()

__init__(page[, parent=None])
参数:

使用父对象parent,构建一个包含page的网页视图。

注意

page的所有权未被接收,调用者负责确保它被删除。

另请参阅

load() setPage()

__init__([parent=None])
参数:

parent - QWidget

使用父对象parent构建一个空白的网页视图。

另请参阅

load()

back()#

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

这是一个方便的槽,用于加载由导航链接建立文档列表中的上一个文档。如果没有上一个文档,则不执行任何操作。

它与以下代码等价:

view.page().triggerAction(QWebEnginePage.Back)

另请参阅

forward() pageAction()

createStandardContextMenu()#
返回类型:

QMenu

创建一个标准上下文菜单,并返回它的指针。

createWindow(type)#
参数:

typeWebWindowType

返回类型:

QWebEngineView

当页面需要创建一个新的窗口时,此函数从关联的 QWebEnginePage.createWindow() 方法中调用。例如,当JavaScript请求在新窗口中打开文档时。

注意

如果关联页面的 createWindow() 方法被重写,则不会调用此方法,除非在重写中显式调用。

另请参阅

createWindow()

findText(arg__1, arg__2, arg__3)#
参数:
  • arg__1 – str

  • arg__2FindFlag 的组合

  • arg__3 – object

findText(subString[, options={}])
参数:
  • subString – str

  • optionsFindFlag 的组合

静态 forPage(page)#
参数:

page - QWebEnginePage

返回类型:

QWebEngineView

如果存在的话,返回与页面关联的视图。

另请参阅

page() setPage()

forward()#

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

一个方便的槽函数,用于加载导航链接构建的文档列表中的下一个文档。如果没有下一个文档,则不执行任何操作。

它与以下代码等价:

view.page().triggerAction(QWebEnginePage.Forward)

另请参阅

back() pageAction()

hasSelection()#
返回类型:

布尔值

属性 hasSelection 的获取器。

history()#
返回类型:

QWebEngineHistory

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

返回视图所导航网页的历史记录的指针。

它与以下代码等价:

view.page().history()
icon()#
返回类型:

QIcon

属性 icon 的获取器。

iconChanged(arg__1)#
参数:

arg__1QIcon

当与视图关联的图标(“favicon”)更改时发射此信号。新的图标由 icon 指定。

icon 的属性通知信号。

iconUrl()#
返回类型:

QUrl

属性 iconUrl 的获取器。

iconUrlChanged(arg__1)#
参数:

arg__1QUrl

当与视图关联的图标(“favicon”)的 URL 更改时发射此信号。新的 URL 由 url 指定。

属性 iconUrl 的通知信号。

lastContextMenuRequest()#
返回类型:

QWebEngineContextMenuRequest

返回当前右键菜单的额外数据。它在调用 contextMenuEvent() 时保证有效。

load(url)#
参数:

urlQUrl

加载指定的 url 并显示它。

注意

视图保持不变,直到有足够的数据来显示新 URL。

load(request)
参数:

requestQWebEngineHttpRequest

发布指定的 request 并加载响应。

loadFinished(arg__1)#
参数:

arg__1 – bool

当页面加载完成时,将发出此信号。 ok 将指示加载是否成功或发生错误。

另请参阅

loadStarted()

loadProgress(progress)#
参数:

progress – int

该信号会在WebView中的某个元素完成加载时触发,例如嵌入式图片或脚本。因此,它跟踪WebView加载的整体进度。

当前值由progress提供,范围从0到100,这是QProgressBar的默认范围。

loadStarted()#

此信号在页面新的加载开始时触发。

page()#
返回类型:

QWebEnginePage

返回指向底层网页的指针。

另请参阅

setPage()

pageAction(action)#
参数:

actionWebAction

返回类型:

QAction

返回指向封装指定Web操作的QAction的指针。如果QAction缺少图标,此函数还将设置默认样式的图标。

pdfPrintingFinished(filePath, success)#
参数:
  • filePath – str

  • success – bool

当将网页打印成PDF文件完成时,会发出此信号。将包含请求创建文件的路径的filePath,如果文件成功创建,则successtrue,否则为false

另请参阅

printToPdf()

print(printer)#
参数:

printerQPrinter

将页面的当前内容渲染成临时PDF文件,然后使用printer打印。

创建和打印PDF文件的设置将来自printer对象。

完成信号后,将发出带有 true 表示成功或 false 表示失败的 printFinished()

确保 printer 有效性直到 printFinished() 发出是用户的职责。

注意

打印操作在浏览器进程中运行,默认情况下不是沙盒模式。

注意

可以使用带有 Stop 的 Web 动作在短时间内中断打印数据的生成步骤。

注意

该功能在渲染到打印机上时将结果转换为位图。请考虑将打印机的默认分辨率提高到至少 300 DPI,或使用 printToPdf() 产生更有效的 PDF 文件输出。

printFinished(success)#
参数:

success – bool

当使用 print() 请求打印完成时,将发出此信号。参数 success 对于成功是 true,对于失败是 false

另请参阅

print()

printRequested()#

当调用 JavaScript window.print() 方法或在 PDF 查看器插件中用户按下打印按钮时,将发出此信号。通常,信号处理程序可以简单地调用 print()

另请参阅

print()

printToPdf(filePath[, layout=QPageLayout(QPageSize(QPageSize.A4), QPageLayout.Portrait, QMarginsF())[, ranges={}]])#
参数:

将页面当前内容渲染成PDF文档,并将其保存到filePath指定的位置。生成的PDF文档的页面大小和方向来自layout中指定的值,而打印的页面范围来自ranges,默认打印所有页面。

此方法异步发送请求打印网页到PDF,并立即返回。要了解请求的结果,连接到信号pdfPrintingFinished()

如果在提供的文件路径中已存在文件,则将其覆盖。

另请参阅

pdfPrintingFinished()

reload()#

重新加载当前文档。

另请参阅

stop()pageAction()loadStarted()

renderProcessTerminated(terminationStatus, exitCode)#
参数:

当渲染进程以非零退出状态终止时,会发出此信号。`terminationStatus`是进程的终止状态,`exitCode`是进程终止的代码。

selectedText()#
返回类型:

str

属性selectedText的获取器。

selectionChanged()#

whenever the selection changes。

注意

在鼠标左键点击并拖动选择文本时,信号将为每个新字符的选中而发出,而不会在释放左鼠标按钮时发出。

另请参阅

selectedText()

setContent(data[, mimeType=""[, baseUrl=QUrl()]])#
参数:

将网页视图的内容设置为 数据。如果 mimeType 参数为空,则假设内容为 text/plain,charset=US-ASCII

内容中引用的外部对象位于相对于 baseUrl 的位置。为了加载具有相对URL的外部对象,baseUrl 不能为空。

数据将立即加载;外部对象将异步加载。

另请参阅

load() setHtml() toHtml()

setHtml(html[, baseUrl=QUrl()])#
参数:
  • html – str

  • baseUrlQUrl

将网页视图的内容设置为指定的 html 内容。

baseUrl 是可选的,并用于解析文档中的相对URL,例如引用的图像或样式表。例如,如果 htmlhttp://www.example.com/documents/overview.html 获取,基URL为,那么使用相对URL引用的图像,diagram.png 应在 http://www.example.com/documents/diagram.png

HTML 文档将立即加载,而外部对象将异步加载。

使用此方法时,Qt WebEngine假定除非另行指定,外部资源(如JavaScript程序或样式表)采用UTF-8编码。例如,可以通过HTML脚本标签的 charset 属性指定外部脚本的编码。或者,编码可以由Web服务器指定。

这是一个等价于 setContent(html, "text/html;charset=UTF-8", baseUrl) 的便利函数。

警告

此函数仅适用于HTML。对于其他MIME类型(如XHTML或SVG),应使用 setContent()

注意

大于2MB的内容无法显示,因为 setHtml() 将提供的HTML转换为百分数编码,并将其放置在 data: 前面以创建它导航到的URL。因此,提供的代码成为一个超过由Chromium设置的2MB限制的URL。如果内容太大,将触发 loadFinished() 信号,并且带有 success=false

setPage(page)#
参数:

page - QWebEnginePage

page 设置为网页观看器的新网页。

提供的页面父级 QObject 仍然拥有该对象。如果当前页面是网页观看器的子项,则将对其进行删除。

另请参阅

page()

setUrl(url)#
参数:

urlQUrl

另请参阅

url()

属性 url 的设置器。

setZoomFactor(factor)#
参数:

factor – float

另请参阅

zoomFactor()

属性 zoomFactor 的设置器。

settings()#
返回类型:

QWebEngineSettings

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

返回指向观看器或页面特定设置对象的指针。

它与以下代码等价:

view.page().settings()
stop()#

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

停止加载文档的便捷槽。

它与以下代码等价:

view.page().triggerAction(QWebEnginePage.Stop)
title()#
返回类型:

str

属性 title 的获取器。

titleChanged(title)#
参数:

title – str

当视图的标题何时更改,都会发射该信号。

另请参阅

title()

triggerPageAction(action[, checked=False])#
参数:

警告

本节包含从 C++ 自动翻译成 Python 的代码片段,可能包含错误。

触发指定的 action。如果是一个可勾选的操作,将假定指定的 checked 状态。

以下示例触发复制操作,因此将任何选定的文本复制到剪贴板。

view.triggerPageAction(QWebEnginePage.Copy)

另请参阅

pageAction()

url()#
返回类型:

QUrl

另请参阅

setUrl()

属性 urlᅟ 的 getter。

urlChanged(arg__1)#
参数:

arg__1QUrl

当视图的 url 更改时,发出此信号。

另请参阅

url() load()

zoomFactor()#
返回类型:

float

另请参阅

setZoomFactor()

属性 zoomFactorᅟ 的 getter。