基于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 相关文章推荐
js自定义方法通过隐藏iframe实现文件下载
Feb 21 Javascript
js去除浏览器默认底图的方法
Jun 08 Javascript
JavaScript中的setMilliseconds()方法使用详解
Jun 11 Javascript
使用JQuery实现的分页插件分享
Nov 05 Javascript
jQuery EasyUI常用数据验证汇总
Sep 18 Javascript
Bootstrap3 图片(响应式图片&amp;图片形状)
Jan 04 Javascript
JavaScript实现一个空中避难的小游戏
Jun 06 Javascript
jQuery 实时保存页面动态添加的数据的示例
Aug 14 jQuery
React应用中使用Bootstrap的方法
Aug 15 Javascript
Electron + vue 打包桌面操作流程详解
Jun 24 Javascript
javascript 模块依赖管理的本质深入详解
Apr 30 Javascript
Js on及addEventListener原理用法区别解析
Jul 11 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
杏林同学录(一)
2006/10/09 PHP
PHP实现采集抓取淘宝网单个商品信息
2015/01/08 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
2015/05/12 PHP
PHP执行SQL文件并将SQL文件导入到数据库
2015/09/17 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
2015/12/31 PHP
jQuery入门知识简介
2010/03/04 Javascript
javascript每日必学之多态
2016/02/23 Javascript
浅析Bootstrap缩略图组件与警示框组件
2016/04/29 Javascript
使用bat打开多个cmd窗口执行gulp、node
2017/02/17 Javascript
基于js中document.cookie全面解析
2017/09/14 Javascript
说说AngularJS中的$parse和$eval的用法
2017/09/14 Javascript
小程序云开发初探(小结)
2018/10/24 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
Vue如何将页面导出成PDF文件
2020/08/17 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
python下函数参数的传递(参数带星号的说明)
2010/09/19 Python
python通过函数属性实现全局变量的方法
2015/05/16 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
pandas 将list切分后存入DataFrame中的实例
2018/07/03 Python
Flask和Django框架中自定义模型类的表名、父类相关问题分析
2018/07/19 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
python 3.6.7实现端口扫描器
2019/09/04 Python
解决Keras中Embedding层masking与Concatenate层不可调和的问题
2020/06/18 Python
python获取天气接口给指定微信好友发天气预报
2020/12/28 Python
纯CSS3实现圆角效果(含IE兼容解决方法)
2014/05/07 HTML / CSS
开发人员所需要知道的HTML5性能分析面面观
2012/07/05 HTML / CSS
用HTML5 实现橡皮擦的涂抹效果的教程
2015/05/11 HTML / CSS
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
介绍一下linux的文件系统
2012/03/20 面试题
编辑硕士自荐信范文
2013/11/27 职场文书
篮球比赛拉拉队口号
2014/06/10 职场文书
《槐乡的孩子》教学反思
2016/02/20 职场文书
导游词之青城山景区
2019/09/27 职场文书
创业计划书之健康营养产业
2019/10/15 职场文书
Spring Bean的实例化之属性注入源码剖析过程
2021/06/13 Java/Android
Spring Cloud Netflix 套件中的负载均衡组件 Ribbon
2022/04/13 Java/Android