【python自动化】Playwright基础教程(五)事件操作②悬停&输入&清除精讲

简介: 【python自动化】Playwright基础教程(五)事件操作②悬停&输入&清除精讲

 

鼠标悬停 - hover

有些元素,只有你鼠标移动到它那个位置上,他才会展开或者显示一些内容,这时候就要用到hover操作了。

使用方法

image.png

参数

image.png

可操作性检查表:https://playwright.dev/python/docs/actionability

 

此方法详细执行步骤

 

等待元素的可操作性检查,除非force设置为true

如果需要的话,将元素滚动到视图中。

使用page.mouse将鼠标悬停在元素的中心位置,或者是position所指定的位置。

等待启动的导航成功或四百,除非no_wait_after设置为true。

鼠标悬停实战

**案列:**打开百度首页,鼠标放置在左上角的更多位置(悬浮),会显示出百度的其他产品。

需实现效果展示:

image.png

代码流程

1、首先我们看一下更多这个元素如何定位

image.png

2、可以通过文本定位(但页面上有三个更多),这里这个更多是第一个,我们可以使用nth(0)或者first进行定位

·

image.png

3、可以通过class定位,唯一

image.png

4、可以通过name定位,唯一

image.png

在这里,class和name我均是使用的xpath定位,这个不熟悉的小伙伴可以单独学习一下。

 

Xpath我常用的:

 

使用元素的属性来定位元素,可以通过 [@属性名='属性值'] 的方式。

示例://input[@id='username'] 选取 id 属性为 “username” 的 input 元素。

 

xpath文本定位

完全匹配文本 //*[text()=“登录”]

包含某个文本 //*[contains(text(),“登录”)]

完整代码

image.png

输入内容 - fill

在输入框中输入一个值。类似于selenium中的send_keys()

使用方法

image.png


参数

image.png

此方法详细执行步骤

 

此方法会先进行可操作性检查(force为默认值时),聚焦元素,对目标元素进行input输入。

如果你想清空此元素的内容,你可以传入空字符串,value = ""。

如果目标元素无法输入文本,将会引发错误。

想要更加细致的输入操作,如模仿人为输入(每个字符之间有输入时间间隔),可以使用locator.type()

输入内容实战

**案例:**在搜素框输入梦无矶的测试开发之路

搜索框网页源码:

image.png

定位

1、根据ID定位

image.png

2、class定位

image.png

3、xpath定位

image.png

想不到吧,小小的一个搜索框竟然有如此多的定位方式。

完整代码

image.png

执行效果展示

image.png

清空内容实战

通过参数我们可以发现,text如果传入一个空值,那么就是进行内容清空。

这里我们先输入一段文本,再输入一个空字符。

执行后发现确实被清空了。教程代码,如果在学习的小伙伴,建议自己写一下运行一下,这些代码我都辛辛苦苦调试好了的,不学好浪费啊!

image.png

输入内容 - type

Tips

 

官方建议使用locator.fill()进行输入,只有当页面上需要执行特殊的按键操作的时候,才使用locator.type()

聚焦元素,输入文本时为文本中的每个字符执行 keydown, keypress/input, and keyup 事件。

若需要执行其他的特殊按键,比如Control,ArrowDown,请使用locator.press()。在后续章节我们会讲到。

使用方法

image.png

参数

image.png

模拟按键输入内容实战

依旧是使用fill操作中的搜索框进行输入。

完整代码

image.png

最终会在输入框中输入梦无矶的测试开发之路。这里就不截图了。

清除 - clear

清除输入字段

使用方法

image.png

参数

image.png

清除内容实战

这个清除是不是很像我们的fill传入控制符?

这里我们依然是在搜索框中输入内容,再清空。

image.png

目录
相关文章
|
10月前
|
安全 JavaScript 开发者
Python 自动化办公神器|一键转换所有文档为 PDF
本文介绍一个自动化批量将 Word、Excel、PPT、TXT、HTML 及图片转换为 PDF 的 Python 脚本。支持多格式识别、错误处理与日志记录,适用于文档归档、报告整理等场景,大幅提升办公效率。仅限 Windows 平台,需安装 Office 及相关依赖。
523 0
|
8月前
|
存储 数据采集 监控
Python定时爬取新闻网站头条:从零到一的自动化实践
在信息爆炸时代,本文教你用Python定时爬取腾讯新闻头条,实现自动化监控。涵盖请求、解析、存储、去重、代理及异常通知,助你构建高效新闻采集系统,适用于金融、电商、媒体等场景。(238字)
1344 2
|
9月前
|
数据采集 监控 Shell
无需Python:Shell脚本如何成为你的自动化爬虫引擎?
Shell脚本利用curl/wget发起请求,结合文本处理工具构建轻量级爬虫,支持并行加速、定时任务、增量抓取及分布式部署。通过随机UA、异常重试等优化提升稳定性,适用于日志监控、价格追踪等场景。相比Python,具备启动快、资源占用低的优势,适合嵌入式或老旧服务器环境,复杂任务可结合Python实现混合编程。
|
11月前
|
存储 数据采集 数据可视化
Python自动化分析知网文献:爬取、存储与可视化
Python自动化分析知网文献:爬取、存储与可视化
|
11月前
|
数据采集 存储 监控
Python爬虫自动化:定时监控快手热门话题
Python爬虫自动化:定时监控快手热门话题
|
8月前
|
数据采集 运维 监控
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
本文系统解析爬虫与自动化核心技术,涵盖HTTP请求、数据解析、分布式架构及反爬策略,结合Scrapy、Selenium等框架实战,助力构建高效、稳定、合规的数据采集系统。
1238 62
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
|
9月前
|
运维 Linux 网络安全
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
自动化真能省钱?聊聊运维自动化如何帮企业优化IT成本
277 4
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
481 4
|
11月前
|
运维 监控 安全
从实践到自动化:现代运维管理的转型与挑战
本文探讨了现代运维管理从传统人工模式向自动化转型的必要性与路径,分析了传统运维的痛点,如效率低、响应慢、依赖经验等问题,并介绍了自动化运维在提升效率、降低成本、增强系统稳定性与安全性方面的优势。结合技术工具与实践案例,文章展示了企业如何通过自动化实现运维升级,推动数字化转型,提升业务竞争力。

热门文章

最新文章

推荐镜像

更多