基于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写的一个自定义弹出式对话框代码
Jan 17 Javascript
打造基于jQuery的高性能TreeView(asp.net)
Feb 23 Javascript
基于jquery的bankInput银行卡账号格式化
Aug 22 Javascript
基于JQuery 滑动与动画的说明介绍
Apr 18 Javascript
jquery ajax同步异步的执行最终解决方案
Apr 26 Javascript
构造函数+原型模式构造js自定义对象(最通用)
May 12 Javascript
JS实现页面超时后自动跳转到登陆页面
Jan 19 Javascript
jquery 中ajax执行的优先级
Jun 22 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
Aug 25 Javascript
基于JavaScript实现智能右键菜单
Mar 02 Javascript
JavaScript树的深度优先遍历和广度优先遍历算法示例
Jul 30 Javascript
angular6 利用 ngContentOutlet 实现组件位置交换(重排)
Nov 02 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
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
关于UEditor编辑器远程图片上传失败的解决办法
2012/08/31 PHP
在PHP中使用redis
2013/11/04 PHP
Ubuntu 16.04下安装PHP 7过程详解
2017/03/28 PHP
php转换上传word文件为PDF的方法【基于COM组件】
2019/06/10 PHP
php输出控制函数和输出函数生成静态页面
2019/06/27 PHP
Javascript 两个窗体之间传值实现代码
2009/09/25 Javascript
基于jQuery的Spin Button自定义文本框数值自增或自减
2010/07/17 Javascript
jQuery随便控制任意div隐藏的方法
2013/06/28 Javascript
简单常用的幻灯片播放实现代码
2013/09/25 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
2014/05/13 Javascript
AngularJs Injecting Services Into Controllers详解
2016/09/02 Javascript
原生js实现网页顶部自动下拉/收缩广告效果
2017/01/20 Javascript
深入解析js轮播插件核心代码的实现过程
2017/04/14 Javascript
浅谈Angular路由复用策略
2017/10/04 Javascript
元素全屏的设置与监听实例
2017/11/28 Javascript
node.js多个异步过程中判断执行是否完成的解决方案
2017/12/10 Javascript
vue实现通讯录功能
2018/07/14 Javascript
微信小程序与公众号卡券/会员打通的问题
2019/07/25 Javascript
Vue Object 的变化侦测实现代码
2020/04/15 Javascript
node中短信api实现验证码登录的示例代码
2021/01/20 Javascript
JavaScript实现打字游戏
2021/02/19 Javascript
Python中用Descriptor实现类级属性(Property)详解
2014/09/18 Python
python分析网页上所有超链接的方法
2015/05/08 Python
Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
2017/08/08 Python
python使用 __init__初始化操作简单示例
2019/09/26 Python
自考自我鉴定范文
2013/10/30 职场文书
高二学生评语大全
2014/04/25 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
2014全年工作总结
2014/11/27 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
React Native项目框架搭建的一些心得体会
2021/05/28 Javascript
Python自动化爬取天眼查数据的实现
2021/06/15 Python
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
Win11怎么进入安全模式?Windows 11进入安全模式的方法
2021/11/21 数码科技