知行编程网知行编程网  2022-04-08 05:00 知行编程网 隐藏边栏 |   抢沙发  3 
文章评分 0 次,平均分 0.0


Python 带你来一次说走就走的环球旅行


阅读文本大概需要 10 分钟。


1

目 标 场 景


十一长假,相信大部分的朋友这会应该是在全国各地浪或者是在浪的路上,朋友圈成为你们表演的场所。


当然,也有一小戳朋友是选择家里蹲,你们是否感觉到无聊?是否想出去浪,参加朋友圈摄影比赛?


本篇文章的目的是利用 Python 带我们实现一次 说走就走的环球旅行,完胜这次的朋友圈摄影比赛。


2

准 备 工 作


在开始编写脚本之前,需要做如下准备工作:

1、一部 Root 后的 Android 手机

2、配置好 Android ADB 开发环境

3、Python 虚拟环境内安装 pocoui 依赖库

4、虚拟定位应用 FackLocation

5、选好一个景点,下载对应景点的一些照片,并准备一段装逼的文字


3

编 写 代 码


一共分个步骤来完成这次操作,分别是通过位置拿到经度和纬度开启虚拟定位服务、导入图片到手机相册、打开朋友圈、选择相册图片、编辑内容和选择地理位置、发布朋友圈。


首先,利用 adb 命令拿到 FackLocation 和微信的应用包名和 LaunchActivity。



拿到应用包名和 LaunchActivity 之后,利用AirtestMonitor工具可以非常方便的打开 FackLocation 应用、添加地理位置。


Python 带你来一次说走就走的环球旅行


到达搜索界面之后,由于搜索的结果在 Monitor 下找不到。


Python 带你来一次说走就走的环球旅行


因此,这里借助开发者选项内的 指针位置,拿到列表第一项的坐标,利用 adb 执行点击操作,既可以完成选择经纬度的操作。



2步,通过元素文字内容来判断服务是否开启,如果没有开启,就通过一次点击操作,完成定位服务的开启。


)


3步,把 PC 端的图片利用 adb push 命令导入到 手机相册目录 下。



需要注意的是,导入图片后需要再 发送一次刷新广播,相册中才能找到这些图片。



 4 步,同样是利用 Airtest 打开微信客户端,然后自动化跳转到朋友圈界面。



5步,从手机相册内选择图片。


Python 带你来一次说走就走的环球旅行


手机相册的照片是按时间进行排序的,根据上面推送的图片数目,选择相册的前面的 具体数目 的照片即可。



6步,输入文字内容,并选择具体的位置。


Python 带你来一次说走就走的环球旅行


由于虚拟定位刷新的不及时,为了保证位置的准确性,连续进行两次定位



 7 步,拿到顶部的发布按钮,就可以 一键发布动态了。


比如,我在深圳就发了一条在北京 TAM 看 YB 的朋友圈。



4

结 果 结 论


跟着上面的操作,就能实现全国任意一个景点,随时随地去玩这一骚操作。


我已经将全部源码上传到后台上,关注后回复「环球旅行」即可获得下载链接。

本篇文章来源于: 菜鸟学Python

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享