autoJS pro-手机自动化脚本(douyin App模拟人工操作点赞、评论、收藏、转发)
autoJS自动化
本人是一个web前端开发工程师,没想到可以用javascript来实现手机自动化,就有了之后的一系列文章,有好建议的同学欢迎评论区分享 ;-)
专栏地址:点击此处
文章目录
- autoJS自动化
- 开发环境
- 链接
- 背景
- 功能
- 1. 打开douyin极速版
- 2. 自定义函数实现点击功能
- 3. 基本操作
- 源文件
开发环境
不同的环境可能导致部分代码运行有问题,所以开发者要确定好自己对应的环境
autojs版本:Pro 9.2.13-0
手机型号:小米8
android版本:10
开发工具:vscode
vscode连接插件:Auto.js-Pro-Ext
脚本对应软件:douyin极速版 version22.3.0
链接
autojs参考文档:点击
CSDN专栏:点击
gitee地址:点击
背景
女朋友的douyin号每次更新总要叫我去帮他点赞、评论、收藏、转发,一次两次还好,后来懵了,就想着能不能做一个手机脚本,来解放双手。
这篇文章只用来实现点赞、评论、收藏、转发 等基础操作;
另外跳转到个人主页,跳转到指定视频页面的功能,自动下滑视频,随机执行基本操作,随机评论等…
咋们其他文章再写~~~
功能
1. 打开douyin极速版
// 根据APP名称打开APP
app.launchApp("抖音极速版");
// 设置脚本坐标点击所适合的屏幕宽高。如果脚本运行时,屏幕宽度不一致会自动放缩坐标。这个功能可以设置屏幕上坐标点击的等比缩放效果。
setScreenMetrics(1080, 1920);
2. 自定义函数实现点击功能
这边主要封装了一个函数,用于点击屏幕,主要原理是autojs Pro 的小机器人获取布局,根据布局调用合适的API,获取到组件的rect,并且点击其中心点位置,实现模拟点击功能
/*** @desc 根据条件点击找到组件,并且点击其中心点,并返回* @param {*} str 输入需要找到组件里面带的文本* @param {*} type 查找组件的类型,由此来确定需要调用什么方法* @param {*} index 索引* @param {*} offsetX 点击X轴偏移* @param {*} offsetY 点击X轴偏移* @returns */
function clickByTextAndType(str, type, index, offsetX, offsetY) {if (!str) {throw ("请输入需要查找的组件文本");}if (!type) {throw ("请输入查找组件的类型");}index = index ? index : 0;offsetX = offsetX ? offsetX : 0;offsetY = offsetY ? offsetY : 0;var rect = null;var collection = null;switch (type) {case "desc": {collection = descContains(str).find();break;}case "text": {collection = textContains(str).find();break;}default: {throw ("请输入正确的查找组件的类型");return false;}}// 判断有无找到组件if (collection.empty()) {throw ("没有找到该组件," + str + "," + type);}// 如果索引比长度小则拿最后一个if (collection.length < (index + 1)) {index = collection.length - 1;}// 找到了rect = collection[index].bounds();// 点击pointvar point = {x: rect.centerX() + offsetX,y: rect.centerY() + offsetY}// 点击按钮click(point.x, point.y);return point;
}
3. 基本操作
点赞、评论、收藏、转发只是控制点击跟输入input数据而已,这边就不细写,可以参考下面的源文件。
源文件
/** @Author: Penk* @LastEditors: Penk* @LastEditTime: 2022-09-15 17:33:26* @FilePath: \autojs-demo\douyin基本操作.js*/
// 根据APP名称打开APP
app.launchApp("抖音极速版");
// 设置脚本坐标点击所适合的屏幕宽高。如果脚本运行时,屏幕宽度不一致会自动放缩坐标。这个功能可以设置屏幕上坐标点击的等比缩放效果。
setScreenMetrics(1080, 1920);
sleep(5000);var mApp = {}/*** @desc 根据条件点击找到组件,并且点击其中心点,并返回* @param {*} str 输入需要找到组件里面带的文本* @param {*} type 查找组件的类型,由此来确定需要调用什么方法* @param {*} index 索引* @param {*} offsetX 点击X轴偏移* @param {*} offsetY 点击X轴偏移* @returns */
function clickByTextAndType(str, type, index, offsetX, offsetY) {if (!str) {throw ("请输入需要查找的组件文本");}if (!type) {throw ("请输入查找组件的类型");}index = index ? index : 0;offsetX = offsetX ? offsetX : 0;offsetY = offsetY ? offsetY : 0;var rect = null;var collection = null;switch (type) {case "desc": {collection = descContains(str).find();break;}case "text": {collection = textContains(str).find();break;}default: {throw ("请输入正确的查找组件的类型");return false;}}// 判断有无找到组件if (collection.empty()) {throw ("没有找到该组件," + str + "," + type);}// 如果索引比长度小则拿最后一个if (collection.length < (index + 1)) {index = collection.length - 1;}// 找到了rect = collection[index].bounds();// 点击pointvar point = {x: rect.centerX() + offsetX,y: rect.centerY() + offsetY}// 点击按钮click(point.x, point.y);return point;
}// douyin操作-点赞
mApp.zan = function () {clickByTextAndType("未点赞", "desc");
}// douyin操作-评论
mApp.comment = function () {// 点击评论按钮clickByTextAndType("评论", "desc");sleep(random(500, 1000));// 输入评论setText(0,"素质3连,马上安排上...");sleep(random(1000, 5000));// 点击发送clickByTextAndType("发送", "desc");sleep(random(1000, 5000));// 点击空白处back();
}// douyin操作-收藏
mApp.collect = function () {// 点击收藏按钮clickByTextAndType("未选中,收藏", "desc");
}// douyin操作-转发
mApp.transmit = function () {// 点击转发按钮clickByTextAndType("分享", "desc");sleep(random(1000, 2000));// 私信朋友按钮clickByTextAndType("私信", "text");sleep(random(1000, 2000));// 私信朋友按钮var point = clickByTextAndType("分享", "desc", random(0, 2));sleep(random(1000, 2000));// 继续点击该位置,可以发信息click(point.x, point.y);sleep(random(1000, 2000));// 输入信息setText(0,"素质3连,马上安排上...");sleep(random(1000, 2000));// 点击发送clickByTextAndType("发送", "desc");
}// 直接调用
mApp.transmit();
autoJS pro-手机自动化脚本(douyin App模拟人工操作点赞、评论、收藏、转发)相关推荐
- QPython+uiautomator2安卓手机自动化脚本编写
QPython+uiautomator2安卓手机自动化脚本编写 开始 手机端运行 不需要尝试的 换个思路 使用图像匹配 常见问题 uiautomator2使用说明:https://github.com ...
- autoJS pro-手机自动化脚本基础小功能篇(截图、版本号、打印日志)
autoJS自动化 本人是一个web前端开发工程师,没想到可以用javascript来实现手机自动化,就有了之后的一系列文章,有好建议的同学欢迎评论区分享 ;-) 专栏地址:点击此处 文章目录 aut ...
- 手机自动化脚本-- 模拟器模拟真机环境过检测
文章目录 安装包目录结构 一.安装雷电模拟器9 二.新建模拟器并且初始化 1. 性能设置 2. 其他设置 3. 当前配置 三.面具 1. 安装 2. 面具初始化 四.修改机型 1. 将机型模块安装到模 ...
- AutoJs制作简易自动化脚本(持续更新)
一.环境搭建 代码编程建议使用vscode编写 下载安装autojs(建议还是下载4.1.1版本):Auto.js Pro (autojs.org) 2023-2-18免费版已经无法使用, ...
- autojs Pro免root脚本引擎编写的获取本地时间及网络时间验证
说明 本文提供的代码仅供参考.不建议用于生产环境. 可能有些地方在最新版本的Auto.js上面需要做修改,才能运行. Auto.js简介 Auto.js是利用安卓系统的"辅助功能" ...
- QQ复读机,autojs pro免root脚本引擎开发的,不需要root权限运行
说明 本文提供的代码仅供参考.不建议用于生产环境. 可能有些地方在最新版本的Auto.js上面需要做修改,才能运行. Auto.js简介 Auto.js是利用安卓系统的"辅助功能" ...
- jenkins + UIAutomation 自动化脚本运行app
这里,我在jenkins上配置了子节点,脚本中包含了在master还是在slave上执行脚本的判断脚本 SERVER_HOME=$JENKINS_HOME/jobs/$JOB_NAME ATTACHE ...
- c#网页自动化脚本语言,C# 模拟浏览器并自动操作的实例代码
本文主要讲解通过WebBrowser控件打开浏览页面,并操作页面元素实现自动搜索功能,仅供学习分享使用,如有不足之处,还请指正. 涉及知识点 WebBrowser:用于在WinForm窗体中,模拟浏览 ...
- python 手机自动化脚本_iOS python自动化出包脚本
脚本代码如下: #!/usr/bin/python # -*- coding:UTF-8 -*- import os import sys import time # 发邮件所用 from email ...
最新文章
- Yolov4性能分析(上)
- Hibernate学习(九)———— 二级缓存和事务级别详讲
- 4020-基于链地址法的散列表的插入(C++,附思路以及头插法,尾插法两种代码)
- 甲骨文谷歌继续打官司:美最高法院同意复审 Java API 版权诉讼案
- TypeScript声明文件
- app测试--性能测试DDMS
- 计算机考研复试汇总(所有科目)
- jasperReports导出PDF字体加粗等样式失效问题
- 联通UPhone计划是国家重大专项?
- 12V继电器开关控制
- 易班自动打卡+钉钉机器人消息提醒
- 独立开发变现周刊(第66期): 如何把一个短链接生成工具变成一个可持续盈利的产品?...
- 58.union (联合查询)
- 软件造价评估最新模板免费下载(基于2022年度行业基准数据)
- NYIST 113 字符串替换
- 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(1)
- MDX语句(初学者)
- NLP学习笔记 02 句法和文法
- 如何管理Apple Watch通知设置?
- 得胜php100怎么样,实情解密得胜得胜好不好用?怎么样呢?真实体验爆料