python uiautomation选择list内容_蜗牛笔记-文章-UIAutomation使用中的问题

在QQMusic中,当无法通过唯一属性定位歌曲列表时,文章介绍了如何利用UIAutomation的click方法通过坐标来定位并点击播放按钮。通过打开QQMusic,输入歌手名,然后获取播放按钮的屏幕坐标,最终实现歌曲的播放。尽管坐标定位不是最佳方案,但在某些情况下是一种可行的解决策略。
摘要由CSDN通过智能技术生成

前面以计算器为例子,UIAutomation可以轻松实现。但在实际操作中,不可能就能得到所有元素的唯一属性,很多时候是什么都没有,或者是大家都用一样的名字。这样定位就不容易实现。

以QQMusic为例,选择歌手后会出现歌曲列表。但是,通过UISpy根本找不到唯一的属性,如图x-x所示。

(图x-x 定位第一首歌曲)

从上图可以看出,第一首歌只提供一个processId的属性,但是该属性在QQmusic里几乎所有元素都一样,所以不能用来定位。该问题提供一种解决方案,拖动UIAutomation界面的Properties下拉滚动条,可以看到出现元素的坐标,那么是否可以用过坐标来定位呢?如图x-xs所示。

(图x-x 元素坐标)

在UIAutomation里面提供一个click(x,y,waittime)的方法。我们可以尝试坐标定位。代码如下:

65import subprocess

import uiautomation

import time

#打开QQMusic

subprocess.Popen('C:\Program Files (x86)\Tencent\QQMusic\QQMusic.exe')

time.sleep(2)

#定位主界面

musicwindow = uiautomation.WindowControl(searchDepth=1, Pro

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值