抖音人脸识别Autojs脚本
title: 抖音人脸识别Autojs脚本
用Autojs写的抖音人脸颜值检测脚本
疫情期间宅家久了,昨天闲着没事(好吧,有事情,但是我不想做) ,消费之火熊熊燃烧。一咬牙把Autojs入正了。我去年接触过这个app:《家国梦》刚出来的时候,用它写了解放双手的脚本,尝到了快乐。
既然入正了,总得干点啥吧。然后我想起了前几天在Github上看见的一个很有意思的项目:如何在抖音上找到漂亮小姐姐 。刚看到这个项目的时候,我就为作者的脑回路狠狠的点了个赞。
所以,我想着自己也写一个玩玩吧,哈哈哈哈哈哈。
于是,昨天晚上,把这个写完了,还贴心的开了个源。(虽然实现挺简单的。。原谅我的臭屁! 哈哈哈哈)
1. 思路来自wangshub的开源项目Douyin-Bot
- 打开抖音
- 截图
- 识别是否有人脸并检测颜值
- 颜值合格则点赞关注切换下一个视频
2. 人脸识别api用的百度智能云(因为免费)
链接:百度智能云
写代码的时候发现百度这个Api还能判断性别(还挺准的,至少我觉得比颜值准确),
所以除了识别小姐姐,我还加上了识别小哥哥的功能
3. 核心源码
var faceValue = 30;//默认30分
var pornValue = 2;//默认2位
var type = 'female';//默认小姐姐
if(files.read("yanzhi.dat")){
faceValue = files.read("yanzhi.dat");
}else{
faceValue = 30;//默认30分
}
if(files.read("shuliang.dat")){
pornValue = files.read("shuliang.dat");
}else{
pornValue = 2;//默认2位
}
if(files.read("xingbie.dat")){
type = files.read("xingbie.dat");
}else{
type = 'female';//默认2位
}
var countVid = 1;//滑动的视频数
var countAdd = 0;//关注的视频数
console.show();
log("颜值:"+faceValue);
log("数量:"+pornValue);
log("性别:"+type);
if(app.launch("com.ss.android.ugc.aweme")){
log("抖音打开成功!");
toast("抖音打开成功!");
if(!requestScreenCapture(false)){
log("请求截图失败");
exit();
}
var addStar = id("b6s").desc("关注").findOne();
var addStar_x = addStar.bounds().centerX();
var addStar_y = addStar.bounds().centerY();
log("获取关注控件成功!");
var addHeart = id("alx").findOne();
var addHeart_x = addHeart.bounds().centerX();
var addHeart_y = addHeart.bounds().centerY();
log("获取点赞控件成功!");
while(countAdd < pornValue){
var time = 1000;
var allTime = 0.3 * 60 * 1000;
for(var i = 0; allTime > 0; i++){
var temAdd = countAdd;
var img = captureScreen();
var imgFile = i+".png";
images.saveImage(img,imgFile);
log("…………开始人脸识别!…………");
toast("开始人脸识别!");
var img1 = images.read(imgFile);
var ak = 'KXIS86UejDFk9RzMxYp0DFMF';//你的人脸识别ak
var sk = 'C93QyBiG346cTezoECXQsGcUsszaln4G';//你的人脸识别sk
var access_token = http.get("https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id="+ak+"&client_secret="+sk).body.json().access_token;
var url = "https://aip.baidubce.com/rest/2.0/face/v3/detect" + "?access_token=" + access_token;
var image64 = images.toBase64(img1);
if(img1){
var res = http.post(url, {
headers: {
'Content-Type': 'application/json; charset=UTF-8'
},
'image': image64,
'image_type': 'BASE64',
'face_field': 'gender,age,beauty'
});
var str = JSON.parse(res.body.string());
if(str['error_msg'] == 'pic not has face'){
log(countVid+".没有检测到人脸!");
toast("没有检测到人脸!");
}else if(str['error_msg'] == 'SUCCESS'){
log(countVid+".检测到了"+str['result']['face_num']+"张人脸");
log(countVid+".人脸性别为:"+str['result']['face_list'][0]['gender']['type']);
log(countVid+".人脸年龄为:"+str['result']['face_list'][0]['age']);
log(countVid+".人脸颜值为:"+str['result']['face_list'][0]['beauty']);
toast("人脸性别为:["+str['result']['face_list'][0]['gender']['type']+"] 人脸颜值为:["+str['result']['face_list'][0]['beauty']+"]");
if(str['result']['face_list'][0]['gender']['type'] == type){
if(str['result']['face_list'][0]['beauty'] > faceValue){
log(countVid+".人脸颜值合格!");
toast(countVid+".人脸颜值合格!");
click(addStar_x,addStar_y);
click(addHeart_x,addHeart_y);
countAdd++;
}
}
}
}
log("…………"+countVid+"的人脸识别运行结束…………");
toast("人脸识别完成");
time += 1000*i;
allTime = allTime - time;
sleep(time);
log("第"+countVid+"个视频,已点赞关注"+countAdd+"个视频");
toast("第"+countVid+"个视频,已点赞关注"+countAdd+"个视频");
files.remove(imgFile);
if(temAdd < countAdd){
log("视频已关注");
toast("视频已关注");
if(pornValue != countAdd){
swipe(device.width / 2, (device.height - (device.height/8)), device.width / 2, device.height/8, 1500);
log("滑动完成");
countVid ++;
}
break;
}else{
log("视频不符合您的审美")
toast("视频不符合您的审美");
if(allTime <0){
swipe(device.width / 2, (device.height - (device.height/8)), device.width / 2, device.height/8, 1500);
log("滑动完成");
countVid ++;
}
}
}
}
}
log("运行结束!共关注"+countAdd+"位颜值"+faceValue+"分以上的用户!");
toast("运行结束!共关注"+countAdd+"位颜值"+faceValue+"分以上的用户!");
log("谢谢您的使用,再见!");
toast("谢谢您的使用,再见!");
sleep(5000);
console.hide();
4. 运行截图

5. 使用说明
或者看我的Gitee
最后,如果您觉着这项目有趣,star一下叭o.o
抖音人脸识别Autojs脚本的更多相关文章
- Python 抖音机器人,论如何在抖音上找到漂亮小姐姐?
只有想不到,没有做不到,最近抖音风靡好友圈,马上就有技术宅本着“代码改变世界”的理念开始了搞事之路. 需要注意的事,漂亮不漂亮没有明确的界限,每个人都有每个人的审美,只有外表而没有心灵的美也是空洞的. ...
- 刷抖音太累,教你用Python把高颜值的小姐姐都爬下来慢慢看
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 星安果.AirPython 目 标 场 景 相信大家平时刷抖音短视频 ...
- Python3实现自动点赞抖音小姐姐
什么是抖音 抖音是2016年9月上线的一款音乐创意短视频社交软件,是一个专注年轻人的15秒音乐短视频社区.用户可以通过这款软件选择歌曲,拍摄15秒的音乐短视频,形成自己的作品. 效果 抖音经常能刷到很 ...
- 前端福利,用 JS 就能实现抖音养号等诸多功能
我是风筝,公众号「古时的风筝」,一个不只有技术的技术公众号,一个在程序圈混迹多年,主业 Java,另外 Python.React 也玩儿的 6 的斜杠开发者. Spring Cloud 系列文章已经完 ...
- OpenCV人脸识别LBPH算法源码分析
1 背景及理论基础 人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分,人脸检测是在一张图片中把人脸定位出来,完成的是搜寻 ...
- Opencv摄像头实时人脸识别
Introduction 网上存在很多人脸识别的文章,这篇文章是我的一个作业,重在通过摄像头实时采集人脸信息,进行人脸检测和人脸识别,并将识别结果显示在左上角. 利用 OpenCV 实现一个实时的人脸 ...
- 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别
[<zw版·Halcon与delphi系列原创教程>zw_halcon人脸识别 经常有用户问,halcon人脸识别方面的问题. 可能是cv在人脸识别.车牌识别方面的投入太多了. 其实,人脸 ...
- pgm revert转换 成jpg 人脸识别图片
最近在搞人脸识别,下载数据集走得比较心累.很多数据集太大了.没有啥标签.先搞一个小的玩玩.还找到的是pgm灰度图.索性写了个小脚本,用来转换.同时写脚本打标签. 数据集地址:http://downlo ...
- 用2263份证件照图片样本测试how-old.net的人脸识别
上一年也就是这个时候微软根据自己的人脸识别API推出了一个识别照片中人脸年龄和性别的网站--http://how-old.net,小伙伴们各种玩耍,一年后的今天突发"奇想"地想测试 ...
随机推荐
- Vue 【前端面试题】
前言 看看面试题,只是为了查漏补缺,看看自己那些方面还不懂.切记不要以为背了面试题,就万事大吉了,最好是理解背后的原理,这样面试的时候才能侃侃而谈.不然,稍微有水平的面试官一看就能看出,是否有真才实学 ...
- 怎么处理使用UINavigation(导航控制器时) UIScrollView及其子类UITableView、UICollectionView可能出现的向下偏移64Px或者顶部对齐等问题
前言 近期在做项目时遇到了好几起由于自动偏移或则没有自动偏移而导致的界面布局问题,尤其是在昨晚新版本赶上IOS9系统升级的时候,刚升级完了后就发现项目里面很多使用UINavgati ...
- [一、Jmeter5安装及环境配置]
前言:Jmeter基于Jave底层开发,需要配置Java运行时环境 第一步:首先从Jmeter的官网下载Jmeter,Oracle官网下载Jave; Apache JMeter 5.2.1(需要Jav ...
- 1035 Password (20分)(水)
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem ...
- ECSHOP数据表结构完整仔细说明教程 (http://www.ecshop119.com/ecshopjc-868.html)
s_account_log //用户账目日志表 字段 类型 Null 默认 注释 log_id mediumint(8) 否 自增ID号 user_id mediumint(8) 否 用户登录 ...
- Unity - 旋转方法
前言 本文梳理了Unity中常用的旋转方法,涉及两大类:Transform.Quaternion. Transform 类 Rotate() 此方法重载多,易理解,在连续动态旋转中较为常用. /* o ...
- Powershell抓取网页信息
一般经常使用invoke-restmethod和invoke-webrequest这两个命令来获取网页信息,如果对象格式是json或者xml会更容易 1.invoke-restmethod 我们可以用 ...
- 数据结构和算法(Golang实现)(9)基础知识-算法复杂度及渐进符号
算法复杂度及渐进符号 一.算法复杂度 首先每个程序运行过程中,都要占用一定的计算机资源,比如内存,磁盘等,这些是空间,计算过程中需要判断,循环执行某些逻辑,周而反复,这些是时间. 那么一个算法有多好, ...
- js使用经验--遍历
目的 在平常的前端开发中,一般需要处理数据(数组和对象居多),特别是复杂功能的页面,通常是一到两个对象数组(有时数组里面还有数组).大多数前端开发的难点就是这里,耗时大.以前我在工作中,遇到的支付方式 ...
- week7_简单题_C_水题_hdu_5578+F_贪心_hdu_5583
C HDU_5578 求字符串中所有相同字母的最小距离H. Input 实例个数T然后T行字符串字符串中仅含有小写字母.1≤T≤501≤len≤1000(len为字符串长度) Output ...