APP自动化-uiautomator2--2、超详细的辅助定位工具讲解-weditor

本文介绍了Weditor这款APP自动化辅助工具的下载、环境配置、启动及使用方法,包括静态和实时模式,页面参数解析,如 Tap、Send Keys 操作,并提供了常见问题及解决方案,如冲突、退出和服务断开等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载

pip install weditor

这个库,直接pip下起来有点麻烦,会经常失败,可以尝试换源,我这里是没有换源,一直等到它自己重试成功。如果一直下载不成功,可以指定下载版本如0.6.4版本。

环境

注意下载环境,我这里是虚拟环境
image.png
所以下载成功后,简单的操作—需要去更换一下系统环境配置(不切换,环境识别不到安装了weditor),然后就可以直接命令启动了。(当然有其他的方式)

启动

cmd输入python -m weditor,就会启动服务了,本地会打开一个界面。当然,cmd界面是这样的
image.png
浏览器界面是这样的:
image.png

使用weditor

image.png
启动后,需要手动在1处输入设备号,然后点击2处,连接,连接成功后Connect后面就会显示一个绿色的草。最后3处会告诉你完成[Finished 1.034s]。

静态实时

image.png
静态:在你点击手机屏幕的时候不会跟着刷新界面信息,需要手动点击左边的"Dump Hierarchy"刷新
实时:开启后,随着手机屏幕的变化而变化显示的信息参数

页面参数1

image.png

上图中,可以很明显的看到"activity"以及坐标等参数信息。这里都是可以拿来定位用的。具体定位看定位章节。 XPathLite 、 resourceId 、 package 、index、 className 这些都是可以作为定位来使用。

在最下方,有一个代码标识符,里面已经使用resourceId 将这里的定位写法已经写出来了,直接copy即可。

再往上的rect,就是所选中的"控件"的基本信息了,所处的XY轴以及宽高

页面参数2

image.png
此处看模拟点击以及写入文本操作,tap widget(Beta)无需管,测试按钮,也是用来点击的。主要常用的就是Tap、Send Keys。

他们三在你选中控件后,会有右边生成代码,如下(如下是我重复一个控件两次的代码):

image.png
输入文本的样式如下:
image.png

tap widget(Beta)

这个目前主要是一个调试作用,效果为点击,但是使用它,你必须装两个库

pip install findit
pip3 install opencv-python

不然会有找不到模块的错误,如何使用(此处直接展示代码):

import uiautomator2 as u2

app = u2.connect("ERLDU19723002447")
app.app_start("com.android.settings",".HWSettings")
app.widget.click("00003#")

这段代码的效果跟页面参数1的效果一直,都为点击搜索设置项

在pycharm运行中,会自带如下的日志参数

image.png

页面参数3

image.png
此页面为一个简单的调试界面,你可以在这里跑代码,调试代码。在下面有一个Console,用于看执行日志的。

页面参数4

image.png
这里就是模拟手机的返回,或者主界面的一些按钮。

注意事项

冲突

不能与Appium等一些相关定位软件同时启动

退出

在启动后的cmd界面,直接CTRL + C即可,按一次无用,连续两次即可。

服务断开

image.png
解决这个,只需要重启服务即可,断开python -m weditor,重新打开cmd,启动服务。

uiautomatorviewer无法打开

作者言:因为atx-agent的存在uiautomator一旦运行,就会有守护服务,它与uiautomatorviewer 有冲突。所以需要stop掉uiautomator的服务

import uiautomator2 as u2

app = u2.connect("emulator-5554")
app.uiautomator.stop()

灰屏|黑屏

这跟node.js版本有关系,目前博主用到的是16版本的。没有问题。

### 安装 WEditor 0.7.3 当遇到安装 `weditor` 的问题时,可以采取一些措施来解决这些问题并成功完成安装。对于特定版本 `0.7.3` 的安装失败情况,有几种方法可以帮助解决问题。 #### 方法一:降级 Python 版本 如果当前使用的 Python 版本较高或较低,可能会引起兼容性问题。建议尝试使用 Python 3.8.x 或者其他稳定版本来进行安装[^2]。 #### 方法二:设置 UTF-8 编码环境变量 有时由于字符集不匹配的原因,在 Windows 下执行命令可能出现编码错误。可以在 CMD 中先设定环境变量再运行 pip 命令: ```batch set PYTHONUTF8=1 pip install weditor==0.7.3 ``` 这一步骤能够确保 Python 解释器以 UTF-8 模式启动,从而减少因编码差异引发的异常[^3]。 #### 方法三:清理缓存重新安装 有时候本地 Pip 缓存中的文件可能损坏或者过期,清除这些旧数据有助于避免潜在冲突: ```bash pip cache purge pip install --no-cache-dir weditor==0.7.3 ``` 通过上述操作移除所有已下载包,并强制从 PyPI 获取最新的源代码进行编译安装[^1]。 #### 方法四:单独安装依赖项 为了防止某些依赖库缺失而导致整个过程失败,可提前手动安装所需组件: ```bash pip install deprecated adbutils apkutils2 cached-property cigam construct deprecation facebook-wda logzero lxml py pyelftools retry tornado uiautomator2 wrapt xmltodict pip install weditor==0.7.3 ``` 这样做的好处是可以更精确地控制各个模块的具体版本号,进而提高整体稳定性[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清安无别事

慢慢的积累一杯奶茶吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值