本教程搭建的流程,可支持在博主粉丝列表,关注列表,自己的新增关注列表内等地方运行。
每次点击运行之前,需要手动打开对应列表的页面后执行,可以随时中断执行,可随时继续执行。
一、流程概述
PS:一句话:找粉丝量大的博主,进入他的粉丝列表,挨个关注即可,因为他的粉丝量能够大,也是互关起来的,都是互关粉,你关注了他的粉丝,就也容易得到他的关注,大家心照不宣。
一、机器人使用步骤
一)手机信息
机型:小米14pro
系统:Xiaomi HyperOS 1.0.32
安卓版本:Android 14
二)打开开发者模式
路径:设置-》我的设备-》全部参数信息-》连续点击系统版本6次左右,会自动开启"开发者模式"
PS:开发者模式,根据手机不同,操作方式略有不同,可以先百度解决,实在不知道怎么打开,可以群内提问。
三)打开USB调试模式
开启调试模式,目的是为了影刀可以通过插件控制手机,这需要系统允许通过USB安装应用,允许修改权限权限或模拟点击。
四)打开影刀手机管理器界面
五)连接设备
六)手动打开小蜜蜂APP任意关注列表
二、开发步骤
一)连接手机
二)无限循环
因为每次获取到的相似元素列表,仅限于当前屏幕可,没出现在可视区域的元素,无法捕获到。因此,每次向上滑动手动,都要重新获取可视区域的元素列表,不知道列表总共需要几页,因此,来个无限循环,一直滑动翻页;
三)获取关注/回关列表
1、xpath分析
通过界面源码结构,可以看到,列表外层容器节点名称叫做: androidx.recyclerview.widget.RecyclerView
,这个元素很容易定位,因为他有个 resource-id
的id是语义化的,可以直接定位
继续往下看,我们可以看到关注元素所在节点的名称叫做 android.widget.TextView
, 该元素可以通过text属性定位,text的内容可能是关注,也可能是回关,这两种情况,我们都要点击,因此,获取关注/回关列表的xpath表达式可以写成:
//androidx.recyclerview.widget.RecyclerView[@resource-id="com.netease.community:id/recyclerView"]//android.widget.TextView[@text='关注' or @text='回关']
2、回到影刀填写xpath及相关参数
四)可能情况1:列表没有可关注元素怎么办?
等到关注一定数量后,就会出现整屏可视区域都没有可关注元素,怎么办?当然是:接着滑动屏幕
五)获取第一个相似元素
每次循环,获取一次相似元素列表,我们可以循环每一个元素,挨个点击。
这是常规的做法,但是这个做法有一个问题:
极端情况下,正在循环时,关注对象比你早一步关注了你,此时,你再去点击关注的时候,状态就冲突了,你点击下去本质上是执行了取消关注的动作,而取消关注后,按钮就会变成 关注
状态,所以就会变成死循环,表现方式就是:当前循环就在当前元素上一直点击关注,却点不下去!
因此,为了避免这种情况,每次循环获取相似元素列表,我们每次只点击第一个元素,因为每次循环获取的都是最新状态列表。
六)可能情况2:若元素不在可视区域,如何准确点击关注/回关 ?
每次循环获取的相似元素列表一般都在可视区域之内,但是上下可能会有一个元素是在屏幕之外的。如下图所示:
为了避免点击的时候,元素不在可视区域,我们点击之前要判断一下元素位置是否在可视区域。
1、找出y坐标极值
怎么判断元素是否在可视区域呢?答案是:通过元素的y坐标
具体步骤是:先测量一下元素位于最下面的时候,所在位置的y坐标,也就是找出:坐标y的极值。可以通过测量坐标得到。
1)打开影刀的元素捕获功能
2)测定极值
2、无限循环获取当前元素的y坐标
3、不断比对最新元素y坐标与极值
每次循环都获取当前元素所在位置的y坐标,如果大于y坐标极值,说明元素在可视区域之外,那么就继续向上滑动,知道元素y坐标小于极值,才表明,元素到了可视区域,可以点击了。
没有评论:
发表评论