框架 (Frames)
簡介
一個 Page 可以附加一個或多個 Frame 物件。每個頁面都有一個主框架,並且假設頁面級互動(如 click
)在主框架中操作。
一個頁面可以附加額外的框架,使用 iframe
HTML 標籤。這些框架可以被訪問以進行框架內的互動。
- Sync
- Async
# Locate element inside frame
# Get frame using any other selector
username = page.frame_locator('.frame-class').get_by_label('User Name')
username.fill('John')
# Locate element inside frame
username = await page.frame_locator('.frame-class').get_by_label('User Name')
await username.fill('John')
Frame 物件
可以使用 page.frame() API 訪問框架物件:
- Sync
- Async
# Get frame using the frame's name attribute
frame = page.frame('frame-login')
# Get frame using frame's URL
frame = page.frame(url=r'.*domain.*')
# Interact with the frame
frame.fill('#username-input', 'John')
# Get frame using the frame's name attribute
frame = page.frame('frame-login')
# Get frame using frame's URL
frame = page.frame(url=r'.*domain.*')
# Interact with the frame
await frame.fill('#username-input', 'John')