GitHub项目地址:项目地址
优化
参考
问题一:adb效率地下
adb命令效率太低,一个视频要78秒才能有反应,我们想办法加快速度,搜来搜去找到一个非常好的项目uiautomator2,响应速度是ms级别的。
首先安装uiautomator2
pip install -U uiautomator2
pip install -U weditor
python -m uiautomator2 init
添加
d = u2.connect_wifi('192.168.100.4')
print(d.info)
d.app_start("com.ss.android.ugc.aweme")
print('模块启动了')
修改翻页
x1 = config['center_point']['x']
y1 = config['center_point']['y']
x2 = config['center_point']['x'] + config['center_point']['rx']
y2 = config['center_point']['y'] + config['center_point']['ry']
d.swipe_ext("up", scale=0.3)
#d.swipe(x1, y1, x2, y2, duration)
time.sleep(1.5)
修改点赞
x = config['center_point']['x']
y = config['center_point']['y']
d.double_click(x, y)
time.sleep(0.5)
修改关注
x = config['follow_bottom']['x'] + _random_bias(10)
y = config['follow_bottom']['y'] + _random_bias(10)
d.click(x, y)
time.sleep(0.5)
修改截图
d.screenshot("autojump.png")
print('d.screenshot')
d.push("autojump.png", "/sdcard/")
print('d.push')
Image.open('./autojump.png')
优化结果:截图 传输速度秒快
问题二:非美女视频赶快跳过
使用腾讯ai识别,首先会有手机传输到电脑延迟和提交腾讯ai的网络延迟,导致没有人脸的视频提交腾讯ai,所以我首先制作一个cv2本地识别判断人脸,加速识别速度。
目标:小脸和没有人脸的视频快速跳过
pip install opencv-python
修改项目文件douyin-bot.py
import cv2
#cv2 人脸识别
localCv2Img = cv2.imread('optimized.png')
face_cascade = cv2.CascadeClassifier('C:\\Users\john\AppData\Local\Programs\Python\Python36\Lib\site-packages\cv2\data\haarcascade_frontalface_alt.xml')
if type(localCv2Img) != str:
localCv2Faces = face_cascade.detectMultiScale(localCv2Img)
if len(localCv2Faces):
for (x, y, w, h) in localCv2Faces:
# 设置人脸宽度大于128像素,去除较小的人脸
if w>=128 and h>=128:
优化结果:快速响应,本地cv2识别后上传,避免风景视频上传腾讯ai的网络延迟。
下期我们将抖音主播信息保存进数据库。