百度移动点击 | 基于操控原生Android控件的移动百度点击器初尝试

来源:从宇宙中来/编辑:硬核的GoGo闯

注意!这只是在学习Autojs中做的一个小项目,十分粗糙,无法用于商用。


众所周知,本渣最近从0基础开始,学习群控技术,争取早日实现日发外链300万,迈出成为直推大佬的一小步。

之前在文章中,有对比过各类主流Android自动化语言的区别:

原理解析

开发环境


编辑器:VsCode

脚本软件:Autojs 7.0.1 Pro

开发语言:JavaScript

Android设备:红米(真机无root,没用模拟器)

Android版本:6.0


点击目标识别


在PC端,通常是先遍历所有搜索结果的DIV,并匹配是否包含点击目标的主域名或熊掌号名称

如果包含,则提取对应的id,操控浏览器滚动到能够展现id的位置,在触发点击。

而移动端识别点击目标,和PC端差不多,但仅通过Autojs,拿不到Android原生浏览器里展示的Html

Autojs是通过Android UI控件识别点击目标

逻辑是,遍历当前界面所有的Android UI控件,并提取text属性,如果包含目标域名,则说明当前页面包含点击目标。

然后通过text="gogochuang.com"定位目标,click()来触发点击


换IP


安装一个vpn app,点击换ip即可。

由于存在vpn质量不佳,经常出现ip速度慢打不开网页的情况,需要添加异常处理的代码。



以上可实现粗糙的移动端点击,百度统计能够接受正常数据。


当前硬件环境无法完成的部分



坐标点击


目前是通过UI控件点击,点击触发永远是这个位置

这就与真实用户的行为不符了,解决的办法也简单。

返回text="www.gogochuang.com"控件左上角的x/y坐标

获取屏幕宽度,假设1080px

然后可以,在x向右1080/3,y向上200px的范围内,随机点击一个位置。

But,Autojs坐标点击的方法,只能在Android 7.0以上的版本有效,我的手机是Android 6.0的,无法使用这个方法


点击分页目标


目前,只能点击第一页的目标,如果第一页没有目标,下滑到底部,点击“下一页”

这个功能也十分简单,但还是版本问题,Android 7.0的手机,才能使用autojs中滑动的方法


摸除浏览器APP数据


浏览器APP每次启动,还保留上一次访问baidu的cookie,保险的话,应该清空数据。

这涉及到Android底层的操作,可以使用一些改机软件来完成。

But,需要手机root+xposed框架,我这个真机root就有些麻烦了。


安卓模拟器


以上问题,用一个Android 7.0版本,已root的手机,均可解决。

市面上众多模拟器,已经支持这个环境。

But,坑爹的来了,Autojs真机能连上,但模拟器连不上。


终极解决办法


找台Android 7.0+已Root的真机

改用Easyclick(真机、模拟器都能连)

租支持Android 7.0+已Root的云控,远程操控

我决定把autojs文档剩下的部分学完,就转投Easyclick门下了。

GoGo闯于



往期推荐


关注公众号,免费刷快排。
转载请说明出处
奇点seo » 百度移动点击 | 基于操控原生Android控件的移动百度点击器初尝试

发表评论

欢迎 访客 发表评论

让流量从这里暴涨!

查看演示 官网购买