基于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 相关文章推荐
javascript基于jQuery的表格悬停变色/恢复,表格点击变色/恢复,点击行选Checkbox
Aug 05 Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 Javascript
用js来定义浏览器中一个左右浮动元素相对于页面主体宽度的位置的函数
Jan 21 Javascript
javascript实现的图片切割多块效果实例
May 07 Javascript
JS实现弹出浮动窗口(支持鼠标拖动和关闭)实例详解
Aug 06 Javascript
js实现瀑布流的三种方式比较
Jun 28 Javascript
使用JavaScript获取URL中的参数(两种方法)
Nov 16 Javascript
JS实现验证码倒计时的注册页面
Jan 02 Javascript
Angular6 正则表达式允许输入部分中文字符
Sep 10 Javascript
小程序和web画三角形实现解析
Sep 02 Javascript
在layui tab控件中载入外部html页面的方法
Sep 04 Javascript
vue穿梭框实现上下移动
Jan 29 Vue.js
原生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
使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
2011/04/23 PHP
初识laravel5
2015/03/02 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
Yii操作数据库实现动态获取表名的方法
2016/03/29 PHP
PHP封装的数据库保存session功能类
2016/07/11 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
PHP PDOStatement::getAttribute讲解
2019/02/01 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
可实现多表单提交的javascript函数
2007/08/01 Javascript
JS获取checkbox的个数简单实例
2016/08/19 Javascript
JavaScript遍历Json串浏览器输出的结果不统一问题
2016/11/03 Javascript
canvas仿iwatch时钟效果
2017/03/06 Javascript
AngularJS自定义指令之复制指令实现方法
2017/05/18 Javascript
angular中实现li或者某个元素点击变色的两种方法
2017/07/27 Javascript
vue+iview+less+echarts实战项目总结
2018/02/22 Javascript
详解vue数组遍历方法forEach和map的原理解析和实际应用
2018/11/15 Javascript
如何在微信小程序里面退出小程序的方法
2019/04/28 Javascript
写了个监控nginx进程的Python脚本
2012/05/10 Python
在Python中执行系统命令的方法示例详解
2017/09/14 Python
Python爬虫获取整个站点中的所有外部链接代码示例
2017/12/26 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
使用Django连接Mysql数据库步骤
2019/01/15 Python
Python3实现的简单工资管理系统示例
2019/03/12 Python
Python类class参数self原理解析
2020/11/19 Python
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
泰国第一的化妆品网站:Konvy
2018/02/25 全球购物
英国拖鞋购买网站:Bedroom Athletics
2020/02/28 全球购物
高中毕业生自我鉴定例文
2013/12/29 职场文书
献爱心活动总结
2014/05/07 职场文书
校园环保广播稿(3篇)
2014/09/15 职场文书
家庭贫困证明书(3篇)
2014/09/15 职场文书
10大幻兽系恶魔果实 蝙蝠果实上榜,第一自愈能力强
2022/03/18 日漫
JAVA长虹键法之建造者Builder模式实现
2022/04/10 Java/Android
vue的项目如何打包上线
2022/04/13 Vue.js
MySQL数据库简介与基本操作
2022/05/30 MySQL
Win11 Dev 预览版25174.1000发布 (附更新修复内容汇总)
2022/08/05 数码科技