playwright--iframe操作
前言
在playwright中,无需切换iframe,直接定位元素即可。
一、iframe语法
page.frame_locator()
locator = page.frame_locator("frame").get_by_text("登录")
说明:使用frame_locator() 定位到iframe上,再在上面使用locator方法定位元素
二、iframe定位
匹配第一个
frame_locator().first
匹配最后一个
frame_locator().last
使用index索引
frame_locator().nth(index)
获取全部iframes
page.frames
三、frame() 定位
根据name属性和url属性匹配
frame = page.frame(name="frame-name")
frame = page.frame(url=r".*domain.*")
frame.fill('#username-input', 'John')
四、page.frame 和 page.frame_locator 区别
page.frame_locator() 返回的对象需要用locator() 方法定位元素,再操作元素
page.frame() 返回的对象可直接使用fill() 、 click() 方法