马爸爸说,世界是“懒人”创造的,我深谙此言真理,这不,冬天到了,北方的朋友们“热”的穿着短袖(有暖气的城市),南方的我们(没有暖气但是又很冷的地方)冻得瑟瑟发抖,刷抖音都不敢漏出手,于是我灵光一现,为何不用Python写个程序,用声音来操控抖音呢,说干就干!
本篇干货主要是用appium, 网上有很多安装appium及相关环境配置,这里就不再赘述了。

01
用appium操控手机
利用appium函数的webdriver模块,打开手机抖音app,代码如下:

desired_caps参数中platform代表系统版本;
deviceName是手机型号,在手机设置中可以找到;
appPackage和appAcivity是抖音APP的信息,每个APP都有这两个信息,下面给大家介绍一下如何找到每个app的appPackage和appAcivity信息:
1).首先在Android SDK安装文件夹下找到aapt.exe工具

2).下载手机APP(以微信为例)到电脑(记住存放位置),打开命令行执行如下代码

其中蓝色遮住的是aapt.exe工具所在的位置,红色遮住的是微信APP所在的位置,回车吗,在返回结果中寻找

这是微信APP的appPackage参数

这是微信APP的appAcivity信息。
Remote是 appium 里面的一个 webdriver 对象,它的第一个参数是 appium server 它所运行的 url ,因为 appium server 它是以一个 web 服务的状态启动的,我们的自动化程序就是要连接这个appium server 服务。

02
PyAudio模块打开电脑录音功能
1).首先设置好录音所需的采样率、采样点、声道及采样宽度信息

2).然后打开一个新的音频流,设置好录音间隔开始录音,录音完成后保存为wav文件


03
语音识别
给大家解释一下,本次语音识别调用的是百度语音识别api,虽然速度稍微慢了点,但是识别准确度还是不错的,它的使用方式也比较简单,在百度语言API上注册一些即可。


可以获得APIKey和SecretKey,构建获得语音识别所需token的url

POST请求后获得token

构建语音识别所需的参数

其中SPEECH是第二步经过转码后的录音文件,token是刚才post请求获取的,其余都好理解,然后识别语音文件。

先试一下语音识别结果,效果还不错

04
懒人操作开始
经过上面的几个步骤的准备,下面我们就可以根据返回结果执行相应操作程序。
这一步主要是根据第三步返回的语音结果(上一条,下一条、评论、滑动、关闭)来执行上滑、下滑、打开评论、滑动评论、关闭评论等具体操作:

向上滑的代码如下:

向下滑的代码如下:

打开评论的代码:

关闭评论的代码:

滑动评论的代码:

如果不知道某个按键的元素,可以在appium客户端点击某按钮,然后它的元素信息就在右侧显示出来了,如下图所示:

大家来看看最终效果吧
(把音量开大点听,效果更佳)
整个过程还算比较流畅,但是有3个小缺点:
1.整个过程稍微有点迟钝,主要是因为语音识别的过程稍微有点慢,但不影响大局;
2.打开评论的时间比较长,这个暂时没有找到好的解决办法;
3.要戴耳机操作,因为抖音发出的声音可能会影响语音识别效果。
年底帮粉丝脱单热帖:
年前脱单,已经有100多位小伙伴加入了脱单群,陆陆续续收到北京,南京,广州,北京等地的小伙伴的投稿。大家投稿之后还是跟小助手联系一下。
想要快速脱单助力,后台输入:【脱单】
点击阅读原文,火速脱单
本文介绍了一种使用Python和Appium实现的抖音语音操控方案,通过语音指令完成上下滑动、评论等操作,旨在提升冬季使用体验,减少手动操作。
8万+

被折叠的 条评论
为什么被折叠?



