马爸爸说,世界是“懒人”创造的,我深谙此言真理,这不,冬天到了,北方的朋友们“热”的穿着短袖(有暖气的城市),南方的我们(没有暖气但是又很冷的地方)冻得瑟瑟发抖,刷抖音都不敢漏出手,于是我灵光一现,为何不用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.要戴耳机操作,因为抖音发出的声音可能会影响语音识别效果。
年底帮粉丝脱单热帖:
【苏州女】 96年,活泼可爱,前端开发
【云南女】 97年,高冷气质女,高铁建筑设计行业
【武汉女】 88年硕士,喜欢撸猫的数据分析师
年前脱单,已经有100多位小伙伴加入了脱单群,陆陆续续收到北京,南京,广州,北京等地的小伙伴的投稿。大家投稿之后还是跟小助手联系一下。
想要快速脱单助力,后台输入:【脱单】
本篇文章来源于: 菜鸟学Python
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 女学霸考692分想当“程序媛”,网友:快劝劝孩子02/08
- ♥ Python无法连接MySQL怎么办11/13
- ♥ 求你了,别再用 pip 那乌龟的速度去安装库了!06/03
- ♥ 初学者学习python或java11/02
- ♥ 如何用python画皮卡丘?09/17
- ♥ 安装了哪个版本的python09/25
内容反馈