基于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生成/解析dom的CDATA类型的字段的代码
Apr 22 Javascript
jquery multiSelect 多选下拉框
Jul 09 Javascript
js简单实现竖向tab选项卡的方法
May 04 Javascript
jQuery实现下拉框选择图片功能实例
Aug 08 Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 Javascript
基于JS实现EOS隐藏错误提示层代码
Apr 25 Javascript
解析JavaScript模仿块级作用域
Dec 29 Javascript
JS简单实现点击跳转登陆邮箱功能的方法
Oct 31 Javascript
JS中判断字符串存在和非空的方法
Sep 12 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
vue-cli3环境变量与分环境打包的方法示例
Feb 18 Javascript
javascript实现导航栏分页效果
Jun 27 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实现采集程序原理和简单示例代码
2007/03/18 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
javascript下function声明一些小结
2007/12/28 Javascript
JavaScript 常用函数库详解
2009/10/21 Javascript
jquery ready函数源代码研究
2009/12/06 Javascript
jquery鼠标停止移动事件
2013/12/21 Javascript
在javascript中如何得到中英文混合字符串的长度
2014/01/17 Javascript
Javascript玩转继承(一)
2014/05/08 Javascript
jquery $(document).ready()和window.onload的区别浅析
2015/02/04 Javascript
超赞的jQuery图片滑块动画特效代码汇总
2016/01/25 Javascript
Node.js查找当前目录下文件夹实例代码
2017/03/07 Javascript
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
详解Webpack-dev-server的proxy用法
2018/09/08 Javascript
Puppet的一些技巧
2018/09/17 Javascript
微信小程序如何使用globalData的方法
2019/06/06 Javascript
[02:03]DOTA2亚洲邀请赛 HGT战队出场宣传片
2015/02/07 DOTA
[38:42]完美世界DOTA2联赛循环赛 Matador vs Forest BO2第二场 11.05
2020/11/05 DOTA
Python基于scrapy采集数据时使用代理服务器的方法
2015/04/16 Python
python函数装饰器用法实例详解
2015/06/04 Python
python2.6.6如何升级到python2.7.14
2018/04/08 Python
python 删除指定时间间隔之前的文件实例
2018/04/24 Python
python得到单词模式的示例
2018/10/15 Python
Python集合基本概念与相关操作实例分析
2019/10/30 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
解决Python发送Http请求时,中文乱码的问题
2020/04/30 Python
DNA测试:Orig3n
2019/03/01 全球购物
既然说Ruby中一切都是对象,那么Ruby中类也是对象吗
2013/01/26 面试题
俄语专业毕业生推荐信
2013/10/28 职场文书
电子专业推荐信范文
2013/11/18 职场文书
六一亲子活动总结
2014/07/01 职场文书
2014年客服工作总结与计划
2014/12/09 职场文书
2016高考冲刺决心书
2015/09/23 职场文书
《打电话》教学反思
2016/02/22 职场文书
解决numpy和torch数据类型转化的问题
2021/05/23 Python
Python爬虫实战之爬取携程评论
2021/06/02 Python
Win11绿屏怎么办?Win11绿屏死机的解决方法
2021/11/21 数码科技