您好,欢迎访问这里是您的网站名称官网!

全国咨询热线

400-123-4567

用python控制手机刷抖音(USB有线/wifi远程)

发布时间:2024-05-26 09:39:07浏览次数:

updated 2020/03/26

# 最核心精简代码(USB连接手机,打开app,下划一次)

import uiautomator2 as u2
import time

d=u2.connect()  
print(d.info)  

d(text="抖音极速版").click() 
time.sleep(3)

d.swipe(0.5, 0.8, 0.6, 0.3, 0.2)
print("end control")

硬件:win10电脑,数据线,一台安卓手机(已打开USB调试)

软件:pycharm or jupyternotebook

安装核心python库 uiautomator2

pip install uiautomator2

安装ADB

安卓机开启USB调试后连接到电脑,就会自动安装ADB了。如果Win10网络情况不好,或者其他一些原因,没有自动安装好ABD/Fastboot驱动,就需要手动安装了。

ADB下载 (目前没有找到稳定地址,请自行搜索)

ADB安装/设置 jingyan.baidu.com/artic

测试ADB是否连接成功:键盘win+R, 输入cmd打开,再输入 adb devices,看到类似下方信息则说明连接成功

(若打算保持用USB连接,可跳过此步)从USB变更为wifi连接手机

先通过数据线连接adb后,在命令行先输入 adb usb 命令后再输入 adb tcpip xxxx(你设置的端口号),端口号设置建议选用不常用未被占用的端口号,查看设备IP地址后同样还是通过

这个时候就可以拔掉数据线了,这个操作的意思就是在手机上开启了adbd的后台进程,并且在5555端口监听,注意拔掉数据线后,检查下手机的usb调试开关是否还处于开启状态

输入 adb devices,查看此时USB连接的设备(还未启动wifi)

输入 adb connect IP地址:端口号,通过adb去连接手机ip的端口

输入 adb devices 检查wifi连接的状态。若显示IP地址:端口,则表示连接成功了。若出现offline,表示离线,请查看手机usb调试是否已打开,unauthorized表示为授权,手机界面应该已经提示了是否授权电脑连接手机,勾选信任电脑,并确定即可

导入必要的库

import uiautomator2 as u2
import time
import random

连接手机:选择有线或无线的连接方式

d=u2.connect() # connect to device via USB

d=u2.connect('192.168.1.20:5555')  # connect to device via wifi

print(d.info) # check connection

定义刷抖音的动作

def watch_douyin_hours(hours=24): # default to watch for 24 hours
    
    # open app
    d(text="抖音极速版").click()
    time.sleep(2)
    n=0
    start=time.perf_counter() # returns the float value of time in seconds
    
    # start watching
    while True:
        d.swipe(0.5, 0.8, 0.6, 0.3, 0.2)
        n +=1
        time.sleep(10 + random.randint(5, 12))
        total_time=time.perf_counter() - start
        if(total_time > hours * 3600):
            break

    print("Watched ", n, "videos in ", hours, "hours")
    return(n) 

开始刷抖音,并记录刷过的视频数

n=watch_douyin_hours(2) # choose to watch for 2 hours
print(n)

(第一次使用时的初始化)用USB连接手机,跑一遍以下代码,然后在手机上连续点击弹出的窗口,允许安装必需的app

import uiautomator2 as u2
d=u2.connect() # connect to device
print(d.info)  # check connection


将手机滑动到抖音极速版所在的屏幕,保证运行代码时程序可以找到“抖音极速版”

(建议将手机屏幕设置为永不息屏,防止过后划动失败)

运行完整代码,即可实现自动操作


参考资料

教程 jianshu.com/p/99efe7379

安装ADB jingyan.baidu.com/artic

wifi 连接adb tinyurl.com/sdaywvb

核心python库 github.com/openatx/uiau

平台注册入口