
作者 | 星安果
来源 | AirPython(ID:AirPython)
01 目标场景
在开始编写脚本之前,需要做好如下准备工作
一部 Root 后的 Android 手机或者模拟器,如果没有 Root 的设备,推荐使用网易 MuMu 模拟器
Android 开发环境、Android Studio
sqlcipher 图形化工具
自动化工具:Python 虚拟环境下安装 pocoui
03 编写脚本
接着,就可以使用 SQLCipher 依赖库来对微信数据库进行查询,我们需要为项目添加如下依赖,方便操作数据库。
需要注意的是,数据库中 rcontact 表的数据比较杂乱,除了正常的好友数据,黑名单好友、已删除好友、公众号、微信群等数据也包含在内,需要我们通过 type 和 verifyFlag 字段进行筛选。
为了便于 Python 操作,最后将查询的好友数据写入到 csv 文件中。
接着尝试着给对方转账,如果好友关系正常,就会跳出一个支付页面让输入密码。
如果是僵尸粉,应用会弹出一个警告对话框,提示你不是收款方好友,没法完成转账的操作。

通过警告对话框是否存在,就可以判断好友关系是否正常。 非正常的好友关系,包含:僵尸粉、对方账号异常等。
循环上面的操作,就可以判断出哪些是僵尸粉,哪些好友的账号被限制,哪些是正常的好友关系。
第 3 步,删除上面获取到的僵尸粉列表。
拿到上面的僵尸粉数据列表,就可以利用上面的方式进行一系列自动化UI 操作,删除掉这些好友。
编译 Android 项目或者直接运行 APK 就能将微信通信录的好友数据保存到项目文件目录下。
然后运行 Python 程序会遍历通讯录好友数据,自动化去操作微信 App,接着将所有的僵尸粉写入到本地文件中,最后可以选择将这些僵尸粉全部删除掉。
我已经将全部源码上传到后台上,关注公众号后回复「 僵尸粉 」即可获得,文中的 APK 可以直接回复「 730 」获取下载链接。
如果你觉得文章还不错,请大家点赞分享下。你的肯定是我最大的鼓励和支持。
(*本文为 Python大本营转载文章,转载请联系原作者)
社群福利
扫码添加小助手,回复:大会,加入2019 AI开发者大会福利群,每周一、三、五更新技术福利,还有不定期的抽奖活动~
◆
AI 开发者大会精彩提前看
◆
2019 AI开发者大会重磅嘉宾更新:阿里、华为、Google Brain、Amazon、微软中国、百度、京东、小米、快手、科大讯飞、商汤、旷视、图森、云知声、思必驰...“硬核AI技术大会,一年参加一次就够了”。扫码查看更多嘉宾和大会信息。
推荐阅读:
