综合定位方式+时间操作进行实战,巩固之前我们学习的定位方式。
这一部分内容对应官网 : https://playwright.dev/python/docs/api/class-locator
这里挑一部分用的比较多,或者说比较实用的事件操作进行讲解,结合代码截图。
说明:事件操作这里的Locator表示定位方式,而不是locator()这个方法。上节内容我们讲到的所有定位操作都属于这个locator定位方式
前言
由于本文是结合实际代码操作,为了避免重复操作等麻烦步骤,这里我使用playwright连接指定浏览器,手动进入相关网址,页面直接进行相关事件操作。
简单步骤:
1、指定端口启动谷歌浏览器,mac同理(到本机安装的chrome.exe根目录下执行)
2、使用connect_over_cdp方法进行连接
3、如果上面的方法不会,那就用如下代码,只不过每次要自己更换url和相关页面地址,不能随心所欲的控制。
高亮显示元素定位 - highlight
在我们调试元素定位的时候,不知道页面上有多少个此类元素,不清楚页面上这个元素具体显示在什么位置,这时候就可以使用 locator.highlight()。
使用方法:
highlight实战
**需求:**高亮百度的搜索框(搜索框的元素id为kw)
网页对应代码:
示列代码:
效果展示:
我们可以看到搜索框这个元素全部高亮显示了,并且会在元素下方注明你写的元素定位方式。
highlight定位多个元素
还是上面这个页面,我们看到页面有非常多的梦无矶,我们使用如下代码再次高亮我们的元素。
效果展示:
这对于我们调试元素定位,是不是炒鸡方便?
元素匹配器 - nth
将定位器返回到第n个元素。下标是从0开始的。nth(0)表示选择第一个元素。
使用方法
nth实战演示
依旧使用上面的梦无矶作为展示,我们定位第二个梦无矶,并且让它高亮显示。
效果显示
元素匹配 - first&last
· 和nth同理,first就是匹配第一个,last就是匹配最后一个。
· first等同于nth(0)
· last等同于nth(-1)
· 使用方法和nth一样
代码示列