基于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 相关文章推荐
Grid得到选择行数据的方法总结
Jan 17 Javascript
jquery中.add()的使用分析
Apr 26 Javascript
jquery 添加节点的几种方法介绍
Sep 04 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
js实现点击按钮后给Div图层设置随机背景颜色的方法
May 06 Javascript
Angularjs单选改为多选的开发过程及问题解析
Feb 17 Javascript
jQuery.ajax向后台传递数组问题的解决方法
May 12 jQuery
Vue Cli与BootStrap结合实现表格分页功能
Aug 18 Javascript
js实现扫雷小程序的示例代码
Sep 27 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 Javascript
vue实现两个区域滚动条同步滚动
Dec 13 Vue.js
微前端qiankun改造日渐庞大的项目教程
Jun 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
Discuz 模板语句分析及知识技巧
2009/08/21 PHP
解析php框架codeigniter中如何使用框架的session
2013/06/24 PHP
详解php与ethereum客户端交互
2018/04/28 PHP
PHP 模拟登陆功能实例详解
2019/09/10 PHP
Add a Formatted Table to a Word Document
2007/06/15 Javascript
用javascript实现的激活输入框后隐藏初始内容
2007/06/29 Javascript
Jquery 设置标题的自动翻转
2009/10/03 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
js操作iframe父子窗体示例
2014/05/22 Javascript
关于JavaScript命名空间的一些心得
2014/06/07 Javascript
javascript内置对象操作详解
2015/02/04 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
JavaScript随机生成颜色的方法
2016/10/15 Javascript
jQuery源码解读之extend()与工具方法、实例方法详解
2017/03/30 jQuery
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
理解Angular的providers给Http添加默认headers
2017/07/04 Javascript
详谈表单重复提交的三种情况及解决方法
2017/08/16 Javascript
Vue的MVVM实现方法
2017/08/16 Javascript
element-ui多文件上传的实现示例
2019/04/10 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
Python文件和目录操作详解
2015/02/08 Python
用TensorFlow实现多类支持向量机的示例代码
2018/04/28 Python
python初学者,用python实现基本的学生管理系统(python3)代码实例
2019/04/10 Python
python利用opencv实现SIFT特征提取与匹配
2020/03/05 Python
浅谈TensorFlow中读取图像数据的三种方式
2020/06/30 Python
python 装饰器的使用示例
2020/10/10 Python
Java基础面试题
2014/07/19 面试题
应届毕业生如何写求职信
2014/02/16 职场文书
2014三年级班主任工作总结
2014/12/05 职场文书
三好学生评语大全
2014/12/29 职场文书
2015年销售人员工作总结
2015/04/07 职场文书
2015年信贷员工作总结
2015/04/28 职场文书
闪闪的红星观后感
2015/06/08 职场文书
同步小康驻村工作简报
2015/07/20 职场文书
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
2021/05/28 Python