基于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 相关文章推荐
用jscript实现新建和保存一个word文档
Jun 15 Javascript
使用JavaScript动态设置样式实现代码(2)
Jan 25 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
Mar 11 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
Oct 17 Javascript
bootstrap改变按钮加载状态
Dec 01 Javascript
分享一则javascript 调试技巧
Jan 02 Javascript
javascript实现简单的省市区三级联动
May 14 Javascript
javascript中判断json的方法总结
Aug 27 Javascript
Knockout结合Bootstrap创建动态UI实现产品列表管理
Sep 14 Javascript
js 数字、字符串、布尔值的转换方法(必看)
Apr 07 Javascript
深入理解Vue transition源码分析
Jul 30 Javascript
antd-mobile ListView长列表的数据更新遇到的坑
Apr 08 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的chr和ord函数实现字符加减乘除运算实现代码
2011/12/05 PHP
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
php的$_FILES的临时储存文件与回收机制实测过程
2013/07/12 PHP
PHP微信开发之二维码生成类
2015/06/26 PHP
extjs中grid中嵌入动态combobox的应用
2011/01/01 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
PHP结合jQuery实现红蓝投票功能特效
2015/07/22 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
javascript实现很浪漫的气泡冒出特效
2020/09/05 Javascript
jQuery实现布局高宽自适应的简单实例
2016/05/28 Javascript
jQuery插件WebUploader实现文件上传
2016/11/07 Javascript
Bootstrap fileinput组件封装及使用详解
2017/03/10 Javascript
JavaScript实现反转字符串的方法详解
2017/04/27 Javascript
AngularJS监听ng-repeat渲染完成的两种方法
2018/01/16 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
js 数据类型判断的方法
2020/12/03 Javascript
[07:55]2014DOTA2 TI正赛第三日 VG上演推进荣耀DKEG告别
2014/07/21 DOTA
[00:33]DOTA2上海特级锦标赛 CDEC战队宣传片
2016/03/04 DOTA
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python打印斐波拉契数列实例
2015/07/07 Python
python使用RNN实现文本分类
2018/05/24 Python
selenium+python实现1688网站验证码图片的截取功能
2018/08/14 Python
图文详解python安装Scrapy框架步骤
2019/05/20 Python
Python DataFrame使用drop_duplicates()函数去重(保留重复值,取重复值)
2020/07/20 Python
python实现一个简单RPC框架的示例
2020/10/28 Python
澳大利亚实惠时尚女装商店:Katies
2019/06/16 全球购物
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
销售顾问岗位职责
2014/02/25 职场文书
我的求职择业计划书
2014/04/04 职场文书
八荣八耻演讲稿
2014/09/15 职场文书
党的群众路线教育实践活动个人整改措施落实情况
2014/11/04 职场文书
个人原因辞职信模板
2015/05/13 职场文书
开业庆典致辞
2015/08/01 职场文书
python 爬取天气网卫星图片
2021/06/07 Python
Nginx禁止ip访问或非法域名访问
2022/04/07 Servers