自动化的抖音

文件命名 main.js

javascript 复制代码
var uiModule = require("ui_module.js");
if (!auto.service) {toast("请开启无障碍服务");auto.waitFor();}
var isRunning = true;
var swipeCount = 0;
var targetSwipeCount = random(1, 10);
var window = uiModule.createUI();
uiModule.setTargetSwipeCount(window, targetSwipeCount);
window.stop.click(() => (isRunning = false));
function updateTimer(seconds) {
  uiModule.updateTimer(window, seconds);
}
function checkForText() {
  return textContains("点击进入直播间").findOne(1000) != null;
}
threads.start(function () {
  var width = device.width;
  var height = device.height;
  toast("3秒后启动应用");
  sleep(3000);
  launchApp("测试");
  sleep(2000);
  while (isRunning) {
    swipeCount = 0;
    targetSwipeCount = random(1, 10);
    uiModule.setTargetSwipeCount(window, targetSwipeCount);
    for (var i = 0; i < targetSwipeCount && isRunning; i++) {
      if (!isRunning) break;
      swipe(width / 2, height * 0.8, width / 2, height * 0.2, 500);
      swipeCount++;
      uiModule.setSwipeCount(window, swipeCount);
      var randomWait = random(1, 10);
      toast("等待: " + randomWait + "秒后继续滑动");
      uiModule.setRandomWait(window, randomWait);
      for (var j = randomWait; j > 0 && isRunning; j--) {
        updateTimer(j);
        sleep(1000);
      }
      if (!isRunning) break;
    }
    if (!isRunning) break;
    if (checkForText()) {
      toast("发现'点击进入直播间',执行滑动");
      swipe(width / 2, height * 0.8, width / 2, height * 0.2, 500);
    } else {
      var randomWait = random(1, 10);
      toast("未发现特定文字,等待: " + randomWait + "秒后执行双击");
      uiModule.setRandomWait(window, randomWait);
      for (var j = randomWait; j > 0 && isRunning; j--) {
        updateTimer(j);
        sleep(1000);
      }
      click(width / 2, height / 2);
      sleep(100);
      click(width / 2, height / 2);
    }
    updateTimer(0);
    sleep(2000);
  }
  window.close();
  toast("脚本已停止");
});

第二个文件ui_module.js 也是试图 文件

javascript 复制代码
// 创建UI
function createUI() {
    var window = floaty.window(
        <frame>
            <vertical>
                <button id="stop" text="停止" w="120" h="40" bg="#ff0000" />
                <text id="timer" text="等待: 0s" textSize="14sp" textColor="#ffffff" />
                <text id="targetSwipeCountText" text="目标滑动次数: 0" textSize="14sp" textColor="#ffffff"/>
                <text id="swipeCountText" text="当前滑动次数: 0" textSize="14sp" textColor="#ffffff"/>
                <text id="randomWaitText" text="随机等待时间: 0s" textSize="14sp" textColor="#ffffff"/>
            </vertical>
        </frame>
    );
    window.setPosition(100, 100);  // 设置浮动窗口位置
    return window;
}

// 更新目标滑动次数
function setTargetSwipeCount(window, targetSwipeCount) {
    ui.run(() => {
        window.targetSwipeCountText.setText("滑动: " + targetSwipeCount+ '次开始点赞');
    });
}

// 更新当前滑动次数
function setSwipeCount(window, swipeCount) {
    ui.run(() => {
        window.swipeCountText.setText("当前滑动次数: " + swipeCount + '次');
    });
}

// 更新随机等待时间
function setRandomWait(window, randomWait) {
    ui.run(() => {
        window.randomWaitText.setText("随机等待时间: " + randomWait + "秒");
    });
}

// 更新倒计时
function updateTimer(window, seconds) {
    ui.run(() => {
        window.timer.setText("等待: " + seconds + "s");
    });
}

// 导出模块函数
module.exports = {
    createUI: createUI,
    setTargetSwipeCount: setTargetSwipeCount,
    setSwipeCount: setSwipeCount,
    setRandomWait: setRandomWait,
    updateTimer: updateTimer
};
相关推荐
玩电脑的辣条哥2 小时前
Python如何播放本地音乐并在web页面播放
开发语言·前端·python
ew452182 小时前
ElementUI表格表头自定义添加checkbox,点击选中样式不生效
前端·javascript·elementui
画月的亮2 小时前
element-ui 使用过程中遇到的一些问题及解决方法
javascript·vue.js·ui
m0_526119402 小时前
点击el-dialog弹框跳到其他页面浏览器的滚动条消失了多了 el-popup-parent--hidden
javascript·vue.js·elementui
ll7788114 小时前
LeetCode每日精进:20.有效的括号
c语言·开发语言·算法·leetcode·职场和发展
工业甲酰苯胺5 小时前
Vue3 基础概念与环境搭建
前端·javascript·vue.js
lyj1689975 小时前
el-tree选中数据重组成树
javascript·vue.js·elementui
Jackson@ML6 小时前
Python数据可视化简介
开发语言·python·数据可视化
赵琳琅6 小时前
Java语言的云计算
开发语言·后端·golang
lly2024066 小时前
jQuery 杂项方法
开发语言