Dialog
Объекты Dialog отправляются страницей через событие page.on("dialog").
Пример использования класса Dialog
:
- Sync
- Async
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)
import asyncio
from playwright.async_api import async_playwright, Playwright
async def handle_dialog(dialog):
print(dialog.message)
await dialog.dismiss()
async def run(playwright: Playwright):
chromium = playwright.chromium
browser = await chromium.launch()
page = await browser.new_page()
page.on("dialog", handle_dialog)
page.evaluate("alert('1')")
await browser.close()
async def main():
async with async_playwright() as playwright:
await run(playwright)
asyncio.run(main())
Диалоги автоматически отклоняются, если нет слушателя page.on("dialog"). Когда слушатель присутствует, он должен либо dialog.accept(), либо dialog.dismiss() диалог - в противном случае страница заморозится, ожидая диалог, и такие действия, как клик, никогда не завершатся.
Методы
accept
Добавлено до v1.9Возвращает, когда диалог был принят.
Использование
dialog.accept()
dialog.accept(**kwargs)
Аргументы
-
prompt_text
str (опционально)#Текст для ввода в запрос. Не вызывает никаких эффектов, если
type
диалога не является запросом. Опционально.
Возвращает
dismiss
Добавлено до v1.9Возвращает, когда диалог был отклонен.
Использование
dialog.dismiss()
Возвращает
Свойства
default_value
Добавлено до v1.9Если диалог является запросом, возвращает значение по умолчанию для запроса. В противном случае возвращает пустую строку.
Использование
dialog.default_value
Возвращает
message
Добавлено до v1.9Сообщение, отображаемое в диалоге.
Использование
dialog.message
Возвращает
page
Добавлено в: v1.34Страница, инициировавшая этот диалог, если доступно.
Использование
dialog.page
Возвращает
type
Добавлено до v1.9Возвращает тип диалога, может быть одним из alert
, beforeunload
, confirm
или prompt
.
Использование
dialog.type
Возвращает