一、环境
- 电脑安装有Python环境
- 电脑安装有ADB
- 安卓手机支持ADB(苹果不了解但原理是一样的)
- 手机开启USB调试
二、配置
手机连接设备
CMD查看连接的设备号(例子:WQ***********)
adb devices
手机打开想要刷的软件并将留在要刷的窗口上
以dy极速版为例
CMD输入:
adb shell dumpsys window | findstr mCurrentFocus
三、代码
将上面的信息填入到代码里package_name
、activity_name
、adbId
要注意手机屏幕大小x1 y1 x2 y2
是手机滑动区间 每款手机屏幕大小不一样不好定值
可以在手机上开启显示触摸操作
和指针位置
进行调整
# 导入模块
import os
import time
import random
import subprocess
# 包名
package_name = ['']
#activity活动窗口名
activity_name = ['']
# 一些变量
i = 0
#设备号
adbId = ""
# 软件菜单
def menu():
print("1.xxx")
print("2.xxx")
def ready():
# 手机静音
os.system("adb shell input keyevent 164")
time.sleep(2)
# 关闭亮度自动调节
#os.system("adb shell settings put system screen_brightness_mode 0")
#time.sleep(2)
# 亮度降到最低
#os.system("adb shell settings put system screen_brightness 4")
#time.sleep(2)
# 判断adb的连接状态
def prepare(device_id):
"""
out执行结果 成功返回0
info 执行输出结果
:param device_id: 设备id
:return:
"""
out, info = subprocess.getstatusoutput("adb -s " + device_id + " get-state")
# print(out, info)
if out == 0:
if 'device' in info:
print("[INFO] ADB is on")
return True
elif 'offline' in info:
print("[WARNING] ADB device is dumb")
input("输入回车重试")
prepare(adbId)
else:
print("[WARNING] ADB is abnormal: " + info)
input("输入回车重试")
prepare(adbId)
else:
print("[WARNING] ADB is bad: " + info)
input("输入回车重试")
prepare(adbId)
# 主程序
def shua(package, activity, i):
os.system('adb shell am start -n %s/%s' % (package, activity))
# 等待5秒,防止网络延迟
print("等待10秒,启动软件")
time.sleep(10)
# 每个软件刷100下
for i in range(101):
a = random.randint(15, 20)
x1 = random.randint(200, 220)
y1 = random.randint(840, 860)
x2 = random.randint(230, 250)
y2 = random.randint(230, 370)
os.system("adb shell input touchscreen swipe " + str(x1) + " " + str(y1) + " " + str(x2) + " " + str(
y2)) # 滑到下个视频
print("正在刷第" + str(i) + "个视频,等待" + str(a) + "秒")
time.sleep(a) # 等待a秒
# 关闭当前应用
os.popen("adb shell am force-stop " + package)
print("=================刷完=======================")
# 启动项
if __name__ == '__main__':
r = prepare(adbId)
if r:
menu()
ready()
i = int(input("请输入开始数字"))
while 1:
for i in range(i - 1, len(package_name)):
print(i+1)
shua(package_name[i], activity_name[i], i)
if i == len(package_name) - 1:
i = 1