跳到主要内容

Dialog

Dialog 对象通过 page 的 page.on("dialog") 事件派发。

使用 Dialog 类的一个例子

from playwright.sync_api import sync_playwright, Playwright

def handle_dialog(dialog):
print(dialog.message)
dialog.dismiss()

def run(playwright: Playwright):
chromium = playwright.chromium
browser = chromium.launch()
page = browser.new_page()
page.on("dialog", handle_dialog)
page.evaluate("alert('1')")
browser.close()

with sync_playwright() as playwright:
run(playwright)
注意

除非存在 page.on("dialog") 监听器,否则对话框会自动关闭。当存在监听器时,它**必须** dialog.accept()dialog.dismiss() 对话框 - 否则页面将冻结等待对话框,并且诸如 click 之类的操作将永远不会完成。


方法

accept

在 v1.9 之前添加 dialog.accept

对话框被接受后返回。

用法

dialog.accept()
dialog.accept(**kwargs)

参数

  • prompt_text str (可选)#

    要输入到 prompt 中的文本。如果对话框的 type 不是 prompt,则不起任何作用。可选。

返回值


dismiss

在 v1.9 之前添加 dialog.dismiss

对话框被关闭后返回。

用法

dialog.dismiss()

返回值


属性

default_value

在 v1.9 之前添加 dialog.default_value

如果对话框是 prompt,则返回默认的 prompt 值。否则,返回空字符串。

用法

dialog.default_value

返回值


message

在 v1.9 之前添加 dialog.message

对话框中显示的消息。

用法

dialog.message

返回值


page

添加于:v1.34 dialog.page

发起此对话框的页面,如果可用。

用法

dialog.page

返回值


type

在 v1.9 之前添加 dialog.type

返回对话框的类型,可以是 alertbeforeunloadconfirmprompt 之一。

用法

dialog.type

返回值