前言
highlight() 方法是通过高亮显示元素,在调试中有很大优势,可以清楚看到定位的元素所在的位置
遇到的问题
使用示例:点百度页面,定位文本元素“新闻”后点击
from playwright.sync_api import sync_playwright
# 上海悠悠 wx:283340479
# blog:https://www.cnblogs.com/yoyoketang/
with sync_playwright() as p:
browser = p.chromium.launch(headless=False, slow_mo=2000)
context = browser.new_context()
page = context.new_page()
page.goto('https://www.baidu.com')
page.get_by_text("新闻").click()
page.wait_for_timeout(200000)
运行时会报错
从报错日志中你会看到定位到3个元素,导致点击报错。
highlight 高亮调试
为了更清楚的知道当前定位的方式,在页面上找到哪些元素,可以用到highlight() 方法,方便达到调试的目的(仅仅只是调试的时候用)。
from playwright.sync_api import sync_playwright
# 上海悠悠 wx:283340479
# blog:https://www.cnblogs.com/yoyoketang/
with sync_playwright() as p:
browser = p.chromium.launch(headless=False, slow_mo=2000)
context = browser.new_context()
page = context.new_page()
page.goto('https://www.baidu.com')
page.get_by_text("新闻").highlight() # 高亮
page.wait_for_timeout(200000)
让定位的元素处于高亮状态
这样会发现在屏幕上定位到3个元素(其中有一个是隐藏的元素,也被定位到了)
文章转自:https://www.cnblogs.com/yoyoketang/p/17439398.html