跳至主要内容

对话框

Dialog 对象由页面通过 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)
note

对话框会自动关闭,除非存在page.on("dialog")监听器。当监听器存在时,它必须调用dialog.accept()dialog.dismiss()来处理对话框 - 否则页面会冻结等待对话框响应,点击等操作将永远无法完成。


方法

accept

Added before v1.9 dialog.accept

当对话框被接受时返回。

用法

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

参数

  • prompt_text str (可选)#

    要在提示框中输入的文本。如果对话框的type不是prompt类型,则不会产生任何效果。可选参数。

返回


关闭

Added before v1.9 dialog.dismiss

当对话框被关闭时返回。

用法

dialog.dismiss()

返回


属性

default_value

Added before v1.9 dialog.default_value

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

用法

dialog.default_value

返回


消息

Added before v1.9 dialog.message

对话框中显示的消息。

用法

dialog.message

返回


页面

Added in: v1.34 dialog.page

触发此对话框的页面(如果存在)。

用法

dialog.page

返回


类型

Added before v1.9 dialog.type

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

用法

dialog.type

返回