我是风筝,公众号「古时的风筝」,一个不只有技术的技术公众号,一个在程序圈混迹多年,主业 Java,另外 Python、React 也玩儿的 6 的斜杠开发者。
Spring Cloud 系列文章已经完成,可以到 我的github 上查看系列完整内容。也可以在公众号内回复「pdf」获取我精心制作的 pdf 版完整教程。

一个神奇的 APP

这个软件叫做 Auto.js,只支持安卓,是一个不需要 Root 权限的 JavaScript 自动化软件。什么意思呢,就是在你的安卓手机上安装这个 APP,然后通过编写 JS 脚本的方式实现自动化操作。类似的也有其他的一些软件,比如苹果自带的快捷操作,可以通过自定义配置完成一系列的流程,但是由于其目标是所有人都可以使用,所以定制的时候就没有那么灵活。

而 Auto.js 通过写代码的方式定制,那不用多说,灵活性肯定是没的说,关键的是,竟然写 JS 就可以,不用懂 Java,也不用懂 kotlin,是不是有点儿优秀呢。

有人说了,这有什么用呢,一般人看到还真觉得用处不大,但是,我们先来看看通过 AutoJS 能实现什么功能吧,只有你想不到的,没有做不到的,随便举几个例子:

  1. 基本操作,比如安装、卸载 、启动、停止APP,切换网络模式、自动打开网址等;
  2. 微信轰炸机,也就是自动不断的给某个人发消息;
  3. 自动收取蚂蚁森林能量;
  4. 百度贴吧签到;
  5. 王者荣耀刷金币;
  6. 抖音、快手自动养号;

是不是操作逐渐具有迷惑性、邪恶感,有一些人可以用它来赚钱,那就是搞手机群控的,当然中间少不了黑灰产,以至于作者都已经在应用商店将 APP 下架。

当然,违法犯罪的事儿是绝对不能干的,我们就是学习学习,做点提高学习、工作效率的事儿而已。

来做一个练练手

现在抖音这么火,几乎人人都想在抖音上火一把,有的专业做短视频的团队或个人会同时运营好多个抖音号,而抖音的一些策略导致在开了新号之后必须要有个养号的过程,也就是模拟正常人刷抖音的方式,告诉抖音后台这是个正常的账号。

下面我们就来用 VSCode 写个自动刷抖音的脚本,来完整看一下如何使用 VSCode 配合手机完成自动刷抖音的自动化操作。

此自动化流程包括:

  1. 自动打开抖音 APP;
  2. 随机观看 20 秒以内;
  3. 随机打开观看 15秒以上的评论区,然后随机查看3页以内的评论;
  4. 关闭评论,继续随机等待3秒以内;
  5. 自动观看下一个视频;

下面是演示 gif,gif 质量太差,可以点击查看视频演示

安装 APK

首先下载 Auto.js APK 安装包,由于已经在应用商店下架,需要的同学可以扫码文章末尾的二维码关注我的公众号,在公众号内回复 「autojs」获取安装包和自动刷抖音脚本。

打开已安装好扩展插件的 VSCode

开发者的目的是为了让大家可以在手机上就能通过编写 JS 的方式实现自动化操作,比如下面这个是 APP 内置的手机编辑器界面。

但是,在手机上写代码岂是程序员所为,有点束手束脚的感觉,还是得上电脑,没错,还得电脑。当然也可以,作者为我们提供了 VSCode 插件。

打开 VSCode,通过菜单"查看"->"扩展"->输入"Auto.js"或"hyb1996"搜索,然后安装即可。

点击可以查看插件的官方介绍

新建一个项目

通过菜单“查看”->“命令面板”->"Auto.js: New Project "新建一个项目,项目包括一个 main.js 和一个project.json 文件,main.js 就是写主要逻辑的文件,project.json 是项目的一些配置信息,这和其他前端项目类似。

编写自动化逻辑

根据你的需要在 main.js 中编写 js 代码,作者已经提供了各种包装好的 API,你可以到官方网站上去查看,官方地址 https://hyb1996.github.io/AutoJs-Docs/#/,例如打开抖音,只需要以下一行代码:

launchApp("抖音短视频");

我写的这个例子主要用到了基于坐标的操作,其实就是模拟做一些点击、上划等的手势操作,可以说没有任何难度,当然,离不开作者完美的 API 保证。

在 VSCode 中启动服务

通过菜单“查看”->“命令面板”->"Auto.js: Start Server "来启动项目,启动成功后,会在右下角显示“Auto.js server running”,只有启动了电脑端的服务,才能进行下面的连接操作。

在 Auto.js APP 中连接电脑

如果你做过安卓开发,那应该很清楚真机调试,要么用数据线,要么保证电脑和手机在同一局域网之下,Auto.js 也一样的,其实就是真机调试。

打开 Auto.js APP,点击右上角菜单按钮,在划出的左侧抽屉框中打开连接电脑。

然后在弹出的输入框中输入电脑的 IP ,点击确定即可。

打开 Auto.js 的无障碍模式

Auto.js 的实现就是依靠的无障碍模式,但是这个模式需要对应用单独打开。仍然在 APP 的左侧抽屉框中打开。

然后会自动跳到手机自身设置中的无障碍模式界面,在下方找到 Auto.js 这个应用,然后打开即可。

就算这里你暂时没有打开,等到之后调试的时候会自动提示你要打开无障碍模式的。

保存项目到手机

当你写完脚本之后,可以通过菜单“查看”->“命令面板”->"Auto.js: Save Project "来保存修改到你的手机上,之后,你就可以在 Auto.js 中看到你做的修改。

调试,查看效果

当你写好了一部分代码后,肯定要看一下效果,也很简单,通过菜单“查看”->“命令面板”->"Auto.js: Run On Device "来运行,当然,前提是你已经安装上面的步骤操作过,并且 Auto.js 处于活动状态。

之后,会在菜单下方显示你已连接到此电脑的设备,我这儿只有一台,所以只显示一个,如果你同时调试多台的话,这里应该显示多个。

当你点击这个设备后,就会在你的手机上执行你编写的逻辑,就像我前面的那个演示效果一样。

如何确定坐标

大部分的操作其实都是对坐标的模拟手势操作,虽然 Auto.js 也支持更复杂的控件操作,甚至能直接连接 Java。

那么如何能确定你要操作的坐标位置呢,比如我这个例子中,评论图标的位置,上划刷新下一个视频时的起止坐标,总不能截个图然后再量吧,那肯定姿势有问题。

首先你要打开手机的开发者模式,一般的手机都是找到设置->关于本机->版本号,然后在版本号上连续点击几次打开开发者模式。

打开之后,在开发者模式中有个指针位置的开关。

然后会在手机屏幕上方显示横纵坐标,手机型号不同,显示位置和效果也有可能不一样。

最好不要有强迫症,不然这么凌乱的画面接受不了,还好我没有,这个指针位置我可以一直开着没什么影响(摊手)。

最后

好用归好用,但是不要用到违法乱纪的地方,一旦用技术作起恶来是很可怕的。

要拿去学习学习的同学可以扫码文章末尾的二维码关注我的公众号,在公众号内回复 「autojs」获取安装包和自动刷抖音脚本。

感觉有意思的话,给个赞吧,总是被白嫖,身体吃不消!

我是风筝,公众号「古时的风筝」,一个在程序圈混迹多年,主业 Java,另外 Python、React 也玩儿的很 6 的斜杠开发者。可以在公众号中加我好友,进群里小伙伴交流学习,好多大厂的同学也在群内呦。

技术交流还可以加群或者直接加我微信。

前端福利,用 JS 就能实现抖音养号等诸多功能的更多相关文章

  1. 【代码开源】GreaterWMS 抖音SDK调用教程

    应用介绍 GreaterWMS 抖音SDK调用教程 SDK具体功能: 1,一仓多店,多仓多店 2,库存同步,商品同步 3,快递发货,物流轨迹 4,订单拦截 5,字节云仓 6,精选联盟 7,供应分销 8 ...

  2. 前端开发者使用JS框架的三个等级

    目前前端开发者使用JS框架是种很普遍的现象,因为框架可以加快开发速度,同时避免各类浏览器的兼容性问题.不过同样是用框架开发,不同开发者的境界水平还是有一定差距,本文将这些前端开发者分为三个等级. 第一 ...

  3. 前端福利:使用Wallpaper Engine让自己的桌面炫酷起来

    Wallpaper Engine,是一款Steam上的特别特别炫酷的壁纸定制软件.它可以对你的桌面进行定制,可以使用视频,动画,网页等形式来替换壁纸. 注意到没,关键是可以使用Html格式的文件作为桌 ...

  4. 0基础菜鸟学前端之Vue.js

    简介:0基础前端菜鸟,啃了将近半月前端VUE框架,对前端知识有了初步的了解.下面总结一下这段时间的学习心得. 文章结构 前端基础 Vue.js简介 Vue.js常用指令 Vue.js组件 Vue.js ...

  5. 前端使用node.js的http-server开启一个本地服务器

    前端使用node.js的http-server开启一个本地服务器 在写前端页面中,经常会在浏览器运行HTML页面,从本地文件夹中直接打开的一般都是file协议,当代码中存在http或https的链接时 ...

  6. 前端使用crypto.js进行加密

    前端使用crypto.js进行加密 https://www.cnblogs.com/lz2017/p/8046816.html   最近我在前端使用Cookies保存密码的时候需要前端来进行加密工作, ...

  7. thinkphp在前端页面的js代码中可以使用 U方法吗? 可以使用模板变量如__URL__等吗?

    thinkphp在前端页面的js代码中可以使用 U方法吗? : 可以的! tp的U方法, 是"全局的", 什么是全局的? 就是, 可以在 "任何地方"使用的: ...

  8. 前端学习之——js解析json数组

    ** 前端学习之——js解析json数组** 解析json数组即对JSONArray的遍历 一.对于标准的json数组如: var result=[{"flag":1," ...

  9. 前端怎么用js模拟应用 JSON-通俗易懂

    前端怎么用js模拟应用 JSON-通俗易懂,这是转载额 好多孩子 弄不明确复杂的json 格式的应用,以下从基础来看一看JSON.怎么玩, 事实上结构理解清了,写起来比html还爽吧. 0.前言   ...

随机推荐

  1. 支持向量机SVM推导

    样本(\(x_{i}\),\(y_{i}\))个数为\(m\): \[\{x_{1},x_{2},x_{3}...x_{m}\} \] \[\{y_{1},y_{2},y_{3}...y_{m}\} ...

  2. Cilium架构 (Cilium 2)

    Cilium架构 译自:http://docs.cilium.io/en/stable/architecture/ 本文档描述了Cilium的架构.它通过记录BPF数据路径(datapath)的钩子来 ...

  3. ValidForm.js的使用注意点

    dataType的值不能为"", 否则会导致错误发生:Uncaught TypeError: Cannot read property '0' of null,http请求可以发送 ...

  4. Spring Cloud 系列之 Gateway 服务网关(一)

    什么是 Spring Cloud Gateway Spring Cloud Gateway 作为 Spring Cloud 生态系统中的网关,目标是替代 Netflix Zuul,其不仅提供统一的路由 ...

  5. GeiGebra指令

  6. JUC强大的辅助类讲解--->>>CountDownLatchDemo (减少计数)

    原理: CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,这些线程会阻塞.其它线程调用countDown方法会将计数器减1(调用countDown方法的线程不会阻塞), ...

  7. Python发送http请求时遇到问题总结

    1.报错信息为“ERROR 'str' object has no attribute 'endwith'”,排查发现endswith方法名写错了,少了s,写成了 'endwith' if inter ...

  8. stand up meeting 1-4

    放假归来第一天,组内成员全员到齐,满血复活. 今天主要对下边最后半个月的任务做了规划和分配. UI的优化部分在假期前静雯已经完成在了UI分支上,国庆会在这两天把UI设计的更新merge到master分 ...

  9. D - Free Candies UVA - 10118

    题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...

  10. jmeter并发时生成唯一变量

    vars.put("partnerOrderId","ZS"+Thread.currentThread().getId()+System.currentTime ...