PySide6.QtWebEngineCore.QWebEngineFrame

class QWebEngineFrame

QWebEngineFrame 类提供了关于页面框架的信息和控制。更多

在版本6.8中添加。

概要

属性

方法

注意

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

详细描述

一个网页引擎框架代表网页中的一个单一框架,例如由 HTML元素创建的框架。一个活动的QWebEnginePage有一个或多个以树形结构排列的框架。可以通过mainFrame()方法访问此树的根,即顶级框架,而children()提供了一个框架的直接子框架。

一个框架的生命周期最多与生成它的QWebEnginePage对象一样长。然而,框架可能会自发且动态地创建和删除,例如通过导航和脚本执行。因此,许多QWebEngineFrame方法返回可选值,如果框架不再存在,这些值将是std::nullopt

注意

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

property htmlNameᅟ: str
Access functions:
property isMainFrameᅟ: bool
Access functions:
property isValidᅟ: bool
Access functions:
property nameᅟ: str
Access functions:
property sizeᅟ: QSizeF
Access functions:
property urlᅟ: QUrl
Access functions:
children()
Return type:

QWebEngineFrame的列表

返回框架子元素的列表,顺序是任意的。

如果找不到框架,则返回一个空列表。

htmlName()
Return type:

字符串

返回框架的name HTML属性的值,如果没有则返回空字符串。

如果找不到框架,则返回一个空的QString。

另请参阅

name

属性 htmlNameᅟ 的获取器。

isMainFrame()
Return type:

布尔

如果此对象表示页面的主框架,则返回true;否则返回false

属性 isMainFrameᅟ 的获取器。

isValid()
Return type:

布尔

如果此对象表示现有框架,则返回true;否则返回false

一旦一个帧无效,它将永远不会再次变为有效。

属性 isValidᅟ 的获取器。

name()
Return type:

字符串

返回框架名称;即,在JavaScript中通过window.name返回的内容。

如果找不到框架,返回一个空的QString。

另请参阅

htmlName

获取属性 nameᅟ 的Getter。

__ne__(rhs)
Parameters:

rhsQWebEngineFrame

Return type:

布尔

如果 leftright 表示同一网页中的不同框架,则返回 true,否则返回 false

__eq__(rhs)
Parameters:

rhsQWebEngineFrame

Return type:

布尔

如果 leftright 表示同一网页中的相同框架,则返回 true,否则返回 false

printToPdf(resultCallback)
Parameters:

resultCallbackPyCallable

将框架的当前内容渲染为PDF文档,并返回包含PDF数据的字节数组作为参数传递给resultCallback。打印使用A4页面大小,纵向布局,并包括所有页面范围。

注意

QWebEnginePage.WebAction.Stop 网页操作可以用来中断此操作。

注意

我们保证resultCallback总是被调用,但它可能在页面销毁期间完成。当QWebEnginePage被删除时,回调会触发一个无效值,并且在其中使用相应的QWebEnginePageQWebEngineFrameQWebEngineView实例是不安全的。

printToPdf(callback)
Parameters:

callbackQJSValue

printToPdf(filePath)
Parameters:

filePath – str

将框架的当前内容渲染成PDF文档,并保存在filePath指定的位置。打印使用A4页面大小,纵向布局,并包括所有页面范围。

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

注意

Stop 网络操作可用于中断此异步操作。

如果在提供的文件路径下已经存在一个文件,它将被覆盖。

另请参阅

pdfPrintingFinished()

runJavaScript(scriptSource, resultCallback)
Parameters:
  • scriptSource – str

  • resultCallbackPyCallable

runJavaScript(scriptSource, worldId[, resultCallback={}])
Parameters:
  • scriptSource – str

  • worldId – int

  • resultCallbackPyCallable

在此框架上运行包含在scriptSource脚本中的JavaScript代码,而不检查页面的DOM是否已构建。

为了避免与页面上执行的其他脚本发生冲突,脚本运行的世界由worldId指定。世界ID值与QWebEngineScript.ScriptWorldId提供的相同,范围在0到256之间。如果省略世界ID,脚本将在MainWorld(0)中运行。

当脚本被执行后,可调用的 resultCallback 会被调用,并传入最后执行的语句的结果。

只能从JavaScript返回纯数据作为结果值。

注意

不要在回调函数中执行冗长的例程,因为它可能会阻塞网页引擎的渲染。

注意

我们保证resultCallback总是被调用,但它可能在页面销毁期间完成。当QWebEnginePage被删除时,回调会触发一个无效值,并且在其中使用相应的QWebEnginePageQWebEngineFrameQWebEngineView实例是不安全的。

size()
Return type:

QSizeF

返回视口中框架的大小。

如果找不到框架,返回 QSizeF()。

属性 sizeᅟ 的获取器。

url()
Return type:

QUrl

返回当前在此框架中加载内容的URL。

如果找不到框架,则返回一个空的 QUrl。

属性 urlᅟ 的获取器。