案例
QQ音乐Android端自动化
目标
QQ音乐app内,打开腾讯音乐由你榜,给喜爱的歌手投票
首先确认本地设备连接成功
adb devices
脚本
import asyncio
from page_eyes.agent import WebAgent, AndroidAgent
async def main():
# 移动端,serial=None为本地连接设备
ui_agent = await AndroidAgent.create(serial=None, platform=Platform.QY)
report = await ui_agent.run(
('1.打开 url "https://yobang.tencentmusic.com/chart/uni-chart/rankList/"\n'
'2.点击关闭弹窗,没有弹窗则跳过步骤\n'
'3.点击"查找"icon\n'
'4.搜索输入框内输入"林俊杰"\n'
'5.点击第一首歌曲的"推荐"按钮\n'
'6.弹窗内点击"推荐"按钮\n'
))
if __name__ == "__main__":
asyncio.run(main())
交互效果
步骤报告
报告内容为每个步骤对应页面的元素信息详情(包括元素位置、大小、识别内容、周围元素等),方便调试与回顾。
点击查看元素信息详情示例
Harmony OS 类似
- 打开 "QQ音乐" APP
- 点击 "乐馆"
- 点击 "歌手"
- 上滑直到出现 "周深"
- 点击 "周深"
- 点击 "全部播放"
由你榜iOS端自动化
目标
打开腾讯音乐由你榜,查看日榜排名第一的歌曲
首先确认 WebDriverAgent 服务已启动,并获取 WDA URL
# 查看 WDA 服务状态 curl http://localhost:8100/status
脚本
import asyncio
from page_eyes.agent import IOSAgent
from page_eyes.device import Platform
async def main():
# iOS端,wda_url为WebDriverAgent服务地址
ui_agent = await IOSAgent.create(wda_url='http://localhost:8100')
report = await ui_agent.run(
(
"""
- 打开 url "https://yobang.tencentmusic.com/chart/uni-chart/rankList/"
- 检查页面是否有 "close" 按钮,如果有则点击 "close" 按钮
- 进入日榜
- 点击
"""
))
if __name__ == "__main__":
asyncio.run(main())
交互效果
iOS 端的交互效果与 Android 端类似,通过 WebDriverAgent 实现对 iOS 设备的自动化控制。
步骤报告
报告内容为每个步骤对应页面的元素信息详情(包括元素位置、大小、识别内容、周围元素等),方便调试与回顾。报告格式与 Android 端保持一致。
Web浏览器自动化用例
目标
在浪潮音乐大赏官网内,查看浪潮评委会信息,并进入浪潮评委官网
脚本
import asyncio
from page_eyes.agent import WebAgent, AndroidAgent
async def main():
# PC Web端
ui_agent = await WebAgent.create(simulate_device='Intel MacBook Pro 13-inch', debug=True)
report = await ui_agent.run(
('1.打开 url "https://wma.wavecommittee.com/"\n'
'2.点击"浪潮评委会成员"tab\n'
'3.上滑页面,直到出现"查看浪潮评委会"\n'
'4.点击"查看浪潮评委会"按钮\n'
))
if __name__ == "__main__":
asyncio.run(main())
交互效果
步骤报告
下图为PC端打开页面的元素信息详情
点击查看元素信息详情示例