有点意思!用Python 一键群发soul消息找对象

转自:程序猿Leo

众所周知,现在随着年轻人 交越来越少和个性越来越独立,单身狗们也与日俱增,但是出于某些原因,很多人还是渴望找到对象的!

今天呢,就给大家带来一款python利器Airtest和一个“soul”App自动群发程序的讲解,有助于广大单身狗们早日找到聊天对象,把妹撩汉一举拿下

01 神奇的Airtest

市面上主流的用于手机办公的自动化工具有很多,那么在众多工具中要怎么选型呢?我们可以对比下最主流的Appnium和Airtest:

Appnium和Airtest都封装了各自较好的API,但是Appnium不支持基于图形识别的定位元素,而且python操作较为复杂,而Airtest正好弥补了这两点,对新手的上手操作提供了很大的空间

Airtest起初是为了游戏的自动化测试开发的,现在已经完备了3D游戏/App/微信小程序等其他引擎的测试,且可用于爬虫,比较强大。而它的不足之处在于图片识别和元素定位遍历搜索速度较慢,且元素属性值相同的情况下可能会判断错误需注意。

再来看一下这个界面:

  • Airtest辅助框区:常用操作功能区

  • Log查看窗区:运行日志区

  • 设备窗区:手机屏幕区

  • Poco辅助窗区:App页面布局信息查看区

  • Airtest辅助框区是方便为不会python的新手提供的,左侧边栏有各类基本UI操作类型,如touch,swipe,exist,text,keyevent等等,选择任意操作类型。

    02 准备工作

    本次我们使用的是安卓真机操作,当然你也可以使用模拟器来进行操作。手机上我们要设置三个点便于与电脑的连接和调试。

    首先点其他设置里的开发者选项,点击允许,然后中间的USB调试和最下面的禁止权限监控也允许。

    然后我们点IDE右上角的连接手机连通之后,它会自动给我们安装两个软件,一个Yosemite输入法和PocoService,允许就可以了,并把默认输入法设成Yosemite。

    同普通python项目一样,我们需要单独为这个工程设置一个python环境,我这里新建虚拟环境之后,激活,需要安装3个库airetst/poco/pocoui

    03 编写代码30行搞定

    1).新建一个air项目

    它会自动给我们补充文首代码。

    2).然后我们来启动App

    start_app(“App包名”)

    那么我们怎么来知道包名呢?

    devs = device

    print(devs.list_app(third_only=True))

    然后我们在控制台里Ctrl+F搜索“soul”结果得到这个App的包名就是”cn.soulapp.android”,将它填入上述参数中。

    3).接着我们就要利用poco这个强大的UI自动化框架了

    它提供了丰富的API操作页面UI元素,便于处理复杂的UI交互操作。

    通过这两行代码来对Poco这个工具对象实例化,参数意为可用输入框,不实时截屏。

    按正常的操作逻辑走,我们要点一个聊天用户的头像或昵称发送消息返回,再点下一个用户,依次循环往复

    那我们首先来观察用户昵称这一元素(这里我们需要在Poco辅助框里选Android才可以定位元素查看下面的UI树,锁形图标表示点击之后不会在手机上执行动作,靶形图标表示选中视察这个元素):

    我们再点其他用户的昵称,发现他们的name都是“
    cn.soulapp.android:id/name”,那我们便可以这一页里的所有用户昵称列表:

    li=poco(name=”cn.soulapp.android:id/name”)

    因为一页有9个,所以我们需要for循环9次来点击。

    4).进入聊天对话框之后

    我们先点击输入框,再键入文字内容,再点击发送按钮,再点左上角的返回,四个动作依次执行如下:

    如果我们遇到被人拉黑的情况,需要点击弹框的确定按钮,所以需要增加一个有否弹框

    无则pass,有则点击

    那么这一页发送完,我们需要上滑,翻到新的一页再对新的9个人依次点击发送消息。上滑操作的api是poco.swipe(p),p有两个参数,一个是起始点坐标,一个是终止点坐标,airtest规定图形界面左上角为[0,0],右下角为[1,1],按比例来,那我们从下划到上只需要按Y坐标从0.85滑到0.08即可,如果不准,再微调下,从0.5滑到0.4:

    poco.swipe([0.8, 0.85], [0.8, 0.08])

    poco.swipe([0.8, 0.5], [0.8, 0.4])

    滑完之后我们再执行每页给用户发消息的动作。

    有了这个东西,你是不是就省了很多时间去寻找可爱的帅锅美女聊天对象了呢。

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2020年4月24日
    下一篇 2020年4月24日

    相关推荐