WZRY

运行方法

准备工作

python -m pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple  --upgrade
#具体路劲根据你的环境修改
#Linux(ARM)
cd ~/.local/lib/python3.10/site-packages/airtest/core/android/static/adb/linux
mv adb adb.bak
ln -s /usr/bin/adb .
#Mac
chmod +x ~/anaconda3/lib/python3.11/site-packages/airtest/core/android/static/adb/mac/adb

Alt text

运行方式

终端运行

python -u wzry.py 配置文件

其中配置文件可以省略,默认单进程控制 127.0.0.1:5555 的安卓设备。 配置文件支持的控制参数见airtest-mobileauto,下面是一些配置文件示例

[client]
LINK_dict = {
    0: "Android:///4e86ac13"}
[client]
LINK_dict = {
    0: "Android:///192.168.192.10:5555"}
[client]
totalnode = 2
multiprocessing = True
LINK_dict = {
    0: "Android:///192.168.192.10:5555",
    1: "Android:///4e86ac13"}
[client]
totalnode = 2
# 不设置BlueStackdir,脚本也可以正常运行。设置后支持模拟器的操作,7*24h运行时更省电
BlueStackdir = C:\Program Files\BlueStacks_nxt
multiprocessing = True
LINK_dict = {
    0: "Android:///127.0.0.1:5555",
    1: "Android:///127.0.0.1:5565"}
[client]
# 节点配置
totalnode = 2
# 不设置LDPlayerdir,脚本也可以正常运行。设置后支持模拟器的操作,7*24h运行时更省电
LDPlayerdir = D:\GreenSoft\LDPlayer
multiprocessing = True
LINK_dict = {
    0: "Android:///127.0.0.1:5555",
    1: "Android:///127.0.0.1:5557"}
[client]
# 节点配置
totalnode = 2
# 不设置MuMudir,脚本也可以正常运行。设置后支持模拟器的操作,7*24h运行时更省电
MuMudir = D:\Program Files\Netease\MuMu Player 12\shell
multiprocessing = True
LINK_dict = {
    0: "Android:///127.0.0.1:16384",
    1: "Android:///127.0.0.1:16416"}
#
[control]
#将运行日志输出到文件,适合于监控windows的计划任务
logfile={
    0: "result.0.txt",
    1: "result.1.txt"}
# 节点配置
totalnode = 3
# 不设置dockercontain,脚本也可以正常运行。设置后支持容器的操作,7*24h运行时更省电
dockercontain = {
    0: "androidcontain0.high",
    1: "androidcontain1"}
    2: "androidcontain2"}
multiprocessing = True
LINK_dict = {
    0: "Android:///127.0.0.1:15555",
    1: "Android:///127.0.0.1:5565",
    2: "Android:///127.0.0.1:5575"
    }

使用AirTestIDE软件运行

Alt text

高级功能

控制参数

控制参数决定软件的运行模式

self.只战一天FILE = "WZRY.oneday.txt"  # 今天执行完之后,直接结束程序。适用采用crontab等模式周期性运行脚本,而不采用本脚本自带的循环。
self.今日休战FILE = "WZRY.tomorrow.txt"  # 今天不打了,明天开始,适合于离开办公室时运行脚本,但是不要执行任何命令,明天早上开始执行
self.触摸对战FILE = "WZRY.TOUCH.txt"  # 在5v5的对战过程中,频繁触摸,提高金币数量
self.标准模式FILE = f"WZRY.{self.mynode}.标准模式.txt"  # 检测到该文件后该次对战使用5v5标准对战模式
self.临时组队FILE = "WZRY.组队.txt"
self.玉镖夺魁签到FILE = "玉镖夺魁签到.txt"
self.免费商城礼包FILE = f"WZRY.{self.mynode}.免费商城礼包.txt"  # 检测到该文件后领每日商城礼包
self.KPL每日观赛FILE = f"WZRY.KPL每日观赛FILE.txt"
self.更新体验服FILE = f"WZRY.{self.mynode}.更新体验服.txt"  # 检测到该文件后登录体验服领取体验币

注入命令

也可以通过python命令,直接修改计算参数和控制

self.重新设置英雄FILE = f"WZRY.{self.mynode}.重新设置英雄.txt"
self.临时初始化FILE = f"WZRY.{self.mynode}.临时初始化.txt"
self.对战前插入FILE = f"WZRY.{self.mynode}.对战前插入.txt"

更新资源

self.图片更新FILE = "WZRY.图片更新.txt"

其他补充

关于windows平台的计划任务

配置示例

Linux计划任务示例

50 4 * * * pkill -f 'wzry.py'
51 4 * * * /usr/lib/android-sdk/platform-tools/adb kill-server
0 5 * * * cd /home/cndaqiang/soft/AirTest_MobileAuto_WZRY && /bin/bash run.sh
50 8 * * 1-5 pkill -f 'wzry.py'