基于aotu.js实现微信自动添加通讯录中的联系人功能


Posted in Javascript onMay 28, 2020

什么是Auto.JS?
Auto.JS是Android平台上的JavaScript自动化工具。

它的本质是可执行自己编写的简易Javascript脚本的,尤其可以在开启“无障碍模式”的情况下对其他App进行一些操作的一个Android App,便于进行自动化操作。学习成本非常低。

Auto.JS已被黑产广泛使用,以至于作者关闭了官方下载通道。

官网:https://github.com/hyb1996/Auto.js

下面通过代码给大家介绍下基于aotu.js实现微信自动添加通讯录中的联系人功能,具体代码如下所示:

微信自动添加通讯录中的联系人

auto.waitFor();
function click_Add(){
	var wait_num = 0;
	var boolea = 1;
	while(!textContains("添加到通讯录").exists()){
		if(wait_num > 10){
			break;
		}
		sleep(100);
		wait_num++;
	}
	
	if(textContains("添加到通讯录").exists()){
		console.verbose("等待点击加好友...");
		var fal = click("添加到通讯录");
		if(fal==false){
			console.error("点击加好友失败");
		}else{
			console.warn("点击加好友成功");
		}
		if(textContains("申请添加朋友").exists()||textContains("发送").exists()){
			Reurn();
			console.log("返回");
		}else{
			sleep(600);
			if(!textContains("更多信息").exists()){
				Reurn();
			}
		}
		sleep(100);
		Reurn();
	}else{
		Reurn();
	}
}
function Reurn(){
	var fan = id("dm").findOne().click();//返回
	if(fan==false){
		console.error("返回失败");
		sleep(200);
		var fan1 = id("dm").findOne().click();
		if(fan==false){
			console.error("再次返回失败");		
		}else{
			console.warn("再次返回成功");
		}
	}else{
		console.warn("返回成功");
	}
	sleep(100);
}
while(true){
	var dq0 = id("dq0").findOne();
	dq0.children().forEach(function(child) {
		var c8a = child.findOne(id("c8a"));
		sleep(200);
		try {
			if(c8a){
				if(c8a.clickable()){
					child.click();
					click_Add();//点击添加好友	
				}
			}
		} catch(e) {
			console.info("出现异常clickable");
			sleep(500);
		}
		
	});
	//下滑
	sleep(100);
	var boolea = id("dq0").findOne().scrollForward();
	if(boolea == false){//如果下滑失败5次就结束
		break;
	}
}
sleep(100);
console.info("程序结束");

微信截屏已添加联系人

"auto";
function click_Add(){
 var wait_num = 0;
 while(!textContains("发消息").exists()||!textContains("更多信息").exists()){
 if(wait_num > 6){
 break;
 }
 sleep(100);
 wait_num++;
 }
 if(textContains("发消息").exists()){
 console.verbose("等待截屏...");
 /**
 * 同时模拟三个手势:
 * 从(300, 400)到(300, 1400)
 * 从(600, 400)到(600, 1400)
 * 从(900, 400)到(900, 1400)
 * 每一个的时长都为350毫秒
 */
 gestures([350, [300, 400], [300, 1400]],
  [350, [600, 400], [600, 1400]],
  [350, [900, 400], [900, 1400]]
 );
 }
}
var count = 0;
while(count<5){
	id("c4v").findOne().children().forEach(function(child) {
		console.info("child");
		sleep(1000);
		if(child.findOne(className("android.widget.LinearLayout").depth(13))){
			console.log("已点击");
			var bl = child.click();
			console.info("click");
			sleep(600);
			click_Add();
			if(bl){
				back();
			}
		}
	});
	 //下滑
	sleep(100);
	var boolea = id("c4v").findOne().scrollForward();
	if(boolea == false){//如果下滑失败5次就结束
		count++;
		break;
	}
}
console.info("程序结束");

 总结

到此这篇关于利用aotu.js实现微信自动添加通讯录中的联系人的文章就介绍到这了,更多相关利用aotu.js实现微信自动添加通讯录中的联系人内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jquery判断浏览器类型的代码
Nov 05 Javascript
JavaScript获取多个数组的交集简单实例
Nov 11 Javascript
canvas实现图像放大镜
Feb 06 Javascript
多个上传文件用js验证文件的格式和大小的方法(推荐)
Mar 09 Javascript
jQuery插件Echarts实现的渐变色柱状图
Mar 23 jQuery
教你快速搭建Node.Js服务器的方法教程
Mar 30 Javascript
详谈AngularJs 控制器、数据绑定、作用域
Jul 09 Javascript
关于TypeScript中import JSON的正确姿势详解
Jul 25 Javascript
详解如何去除vue项目中的#——History模式
Oct 13 Javascript
vue-cli 引入、配置axios的方法
May 08 Javascript
微信小程序实现收藏与取消收藏切换图片功能
Aug 03 Javascript
uniapp实现横向滚动选择日期
Oct 21 Javascript
原生js实现五子棋游戏
May 28 #Javascript
Vue微信公众号网页分享的示例代码
May 28 #Javascript
纯JS实现五子棋游戏
May 28 #Javascript
js实现简单五子棋游戏
May 28 #Javascript
js实现双人五子棋小游戏
May 28 #Javascript
vue实现五子棋游戏
May 28 #Javascript
用vue 实现手机触屏滑动功能
May 28 #Javascript
You might like
php生成WAP页面
2006/10/09 PHP
php匹配字符中链接地址的方法
2014/12/22 PHP
Yii2中cookie用法示例分析
2016/07/18 PHP
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
以jQuery中$.Deferred对象为例讲解promise对象是如何处理异步问题
2015/11/13 Javascript
jQuery实现图片轮播效果代码(基于jquery.pack.js插件)
2016/06/02 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
微信小程序实现下拉菜单切换效果
2020/03/30 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
javascript写一个ajax自动拦截并下载数据代码实例
2019/09/07 Javascript
JavaScript 防盗链的原理以及破解方法
2020/12/29 Javascript
Python 条件判断的缩写方法
2008/09/06 Python
python监控网卡流量并使用graphite绘图的示例
2014/04/27 Python
Python中使用select模块实现非阻塞的IO
2015/02/03 Python
深入理解NumPy简明教程---数组1
2016/12/17 Python
Python 2与Python 3版本和编码的对比
2017/02/14 Python
Django 通过JS实现ajax过程详解
2019/07/30 Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
2019/11/15 Python
pytorch 彩色图像转灰度图像实例
2020/01/13 Python
python怎么判断模块安装完成
2020/06/19 Python
python两种注释用法的示例
2020/10/09 Python
Python暴力破解Mysql数据的示例
2020/11/09 Python
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
经典广告词大全
2014/03/14 职场文书
初三学生评语大全
2014/04/24 职场文书
交通文明倡议书
2014/05/16 职场文书
品牌转让协议书
2014/08/20 职场文书
先进教育工作者事迹材料
2014/12/23 职场文书
新娘婚礼答谢词
2015/09/29 职场文书
小学语文教学反思范文
2016/03/03 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书
创业计划书之酒厂
2019/10/14 职场文书
canvas多重阴影发光效果实现
2021/04/20 Javascript
MySQL单表千万级数据处理的思路分享
2021/06/05 MySQL
无线电通信名词解释
2022/02/18 无线电