首页 编程教程正文

快手自动浏览视频脚本

piaodoo 编程教程 2020-02-22 22:15:26 1593 0 python教程

本文来源吾爱破解论坛

本帖最后由 sukanka 于 2020-2-17 18:47 编辑

春节期间闲在家里无事,老妈又要刷快手极速版挣金币,整天在那刷.看不下去了,就写了个脚本自动刷.脚本使用 python 调用 adb 命令,目前只实现了只在快手的视频界面自动滑屏, 其他界面不做任何事.不过可以自行添加需要滑动的界面.
更新: 又增加了刷宝短视频, 老妈的手机是 OnePlus5T, 最前面会多一个
'  * ContentProviderRecord{362943b u0 com.snda.wifilocating/com.baidu.pyramid.runtime.multiprocess.components.ServerProvider}\n'
因此直接取位置不可取. 刷宝还是只需要下滑就可以了,因此没有做特殊动作. 下面是新的源码.

再次更新,又增加了快音,另外修改了前台程序判断的逻辑,还修改了程序执行的条件,现在不会因为设备突然断开而导致程序停止运行.

#! /usr/bin/python
# 自动滑动脚本. 可用于快手刷金币
# author: sukanka
# updated: 2020-02-17 18:42
import os
import random
import time
ACTIVITIES=['com.kuaishou.nebula/com.yxcorp.gifshow.HomeActivity',"com.jm.video/.ui.main.MainActivity", "com.kuaiyin.player/.MainActivity"]
# 快手, 刷宝, 快音

def findFrontActivity(device):
    activityList=os.popen("adb -s {} shell dumpsys activity | grep -i run".format(device)).readlines() # 获取所有正在运行任务
    activity=""
    for string in activityList:
        if "Run #" in string: # 找到最前台的活动
            activity=string
            break
    activity=activity.strip().split(" ") # 删除首尾空格后按中间的空格分割
# ['Run', '#0:', 'ActivityRecord{ab835a9', 'u0', 'com.kuaishou.nebula/com.yxcorp.gifshow.HomeActivity', 't8874}']
    if activity !="":
        try:
            activity=activity[4]
            return activity
        except IndexError:
            print(activity)
            return ""
# com.kuaishou.nebula/com.yxcorp.gifshow.HomeActivity

def autoSwipe(ACTIVITIES):
    connected=os.popen("adb devices").readlines()
    devices=[connected[0:-8] for i in range(1,len(connected)-1)] # 获取所有设备代号
    x=random.randint(200,800)
    y=random.randint(350,550)
    dx=random.randint(0,50)
    dy=random.randint(900,1200)
    tap_time=random.randint(300,600) # 随机选择滑动参数
    for device in devices:
        if findFrontActivity(device) in ACTIVITIES: # 如果前台运行特定应用就自动滑动
            slide="adb -s {} shell input swipe {} {} {} {} {}".format(device,x+dx,y+dy,x,y,tap_time)
            os.system(slide)
        else:
            continue    
    time.sleep(2+3*random.random()) # 滑动后随机等待2-5秒

if __name__=="__main__":
    while True:
        if os.system("adb devices")==0: # 如果有设备连接.
            autoSwipe(ACTIVITIES)

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/8001.html

搜索