【python自动化】Playwright基础教程(四)事件操作①高亮&元素匹配器&鼠标悬停

简介: 【python自动化】Playwright基础教程(四)事件操作①高亮&元素匹配器&鼠标悬停

 

综合定位方式+时间操作进行实战,巩固之前我们学习的定位方式。

这一部分内容对应官网 : https://playwright.dev/python/docs/api/class-locator

 

这里挑一部分用的比较多,或者说比较实用的事件操作进行讲解,结合代码截图。

 

说明:事件操作这里的Locator表示定位方式,而不是locator()这个方法。上节内容我们讲到的所有定位操作都属于这个locator定位方式

前言

由于本文是结合实际代码操作,为了避免重复操作等麻烦步骤,这里我使用playwright连接指定浏览器,手动进入相关网址,页面直接进行相关事件操作。

简单步骤:

1、指定端口启动谷歌浏览器,mac同理(到本机安装的chrome.exe根目录下执行)

image.png

2、使用connect_over_cdp方法进行连接

image.png

3、如果上面的方法不会,那就用如下代码,只不过每次要自己更换url和相关页面地址,不能随心所欲的控制。

image.png

高亮显示元素定位 - highlight

在我们调试元素定位的时候,不知道页面上有多少个此类元素,不清楚页面上这个元素具体显示在什么位置,这时候就可以使用 locator.highlight()

使用方法:

image.png

highlight实战

**需求:**高亮百度的搜索框(搜索框的元素id为kw)

网页对应代码:

image.png

示列代码:

image.png

效果展示:

image.png

我们可以看到搜索框这个元素全部高亮显示了,并且会在元素下方注明你写的元素定位方式。

highlight定位多个元素

还是上面这个页面,我们看到页面有非常多的梦无矶,我们使用如下代码再次高亮我们的元素。

image.png

效果展示:

image.png


这对于我们调试元素定位,是不是炒鸡方便?

元素匹配器 - nth

将定位器返回到第n个元素。下标是从0开始的。nth(0)表示选择第一个元素。

使用方法

image.png

nth实战演示

依旧使用上面的梦无矶作为展示,我们定位第二个梦无矶,并且让它高亮显示。

image.png

效果显示

image.png

元素匹配 - first&last

· nth同理,first就是匹配第一个,last就是匹配最后一个。

· first等同于nth(0)

· last等同于nth(-1)

· 使用方法和nth一样

代码示列

image.png

目录
相关文章
|
23天前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
|
1月前
|
数据采集 存储 监控
实现自动化数据抓取:使用Node.js操控鼠标点击与位置坐标
本文介绍了如何使用Node.js和Puppeteer实现自动化数据抓取,特别是针对新闻网站“澎湃新闻”。通过设置代理IP、User-Agent和Cookie,提高爬虫的效率和隐蔽性,避免被网站封锁。代码示例展示了如何模拟鼠标点击、键盘输入等操作,抓取并整理新闻数据,适用于需要规避IP限制和突破频率限制的场景。
83 10
|
3月前
|
Python
Python 选出列表中特定的元素
Python 选出列表中特定的元素
43 3
|
3月前
|
数据处理 索引 Python
Python列表与元素修改的操作技巧
Python列表提供了丰富的方法和技巧来进行高效的数据操作。熟练运用上述技巧,可以大大提高数据处理的效率和代码的可读性。实践中,根据具体需求灵活选择合适的方法,可以在保证代码效率的同时,也使代码更加简洁明了。
83 2
|
3月前
|
存储 弹性计算 运维
自动化监控和响应ECS系统事件
阿里云提供的ECS系统事件用于记录云资源信息,如实例启停、到期通知等。为实现自动化运维,如故障处理与动态调度,可使用云助手插件`ecs-tool-event`。该插件定时获取并转化ECS事件为日志存储,便于监控与响应,无需额外开发,适用于大规模集群管理。详情及示例可见链接文档。
|
4月前
|
程序员 Python
Python 将元素添加到列表
【8月更文挑战第21天】
240 3
|
4月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
208 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
|
4月前
|
Python
【Leetcode刷题Python】剑指 Offer II 082. 含有重复元素集合的组合
解决LeetCode平台《剑指 Offer II 082. 含有重复元素集合的组合》题目的Python代码实现,通过深度优先搜索算法找出所有和为特定目标值的数字组合,并在搜索过程中通过排序和跳过重复元素来避免解集中出现重复组合。
41 2
|
4月前
|
Python
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
43 0
|
4月前
|
算法 索引 Python
【Leetcode刷题Python】34. 在排序数组中查找元素的第一个和最后一个位置(二分查找)
解决LeetCode "在排序数组中查找元素的第一个和最后一个位置" 问题的方法。第一种方法是使用两次二分查找,首先找到目标值的最左边界,然后找到最右边界。第二种方法是利用Python的list.index()方法,先正序找到起始位置,再逆序找到结束位置,并给出了两种方法的Python实现代码。
64 0