用 Python 自动给抖音小姐姐评论一个 666

前一段时间写了一篇 《抖音 Python 机器人,论如何在抖音上找到漂亮小姐姐?》,没想到有相当多的同学有着相同的需求!

大家皆为

程序的基本思路请见 原理与使用教程

当程序在抖音上刷到一个漂亮小姐姐的时候就会自动点赞加关注

作为一个闷骚程序员,见到漂亮小姐姐总是在背后默默点赞加关注

但是鲁迅曾经说过 喜欢就要大声说出来!

于是我又给脚本加上了这么一个自动评论的功能

自动评论实现步骤

查阅 ADB 文档, adb shell input text "hello,world" 命令可直接将字符串输入到 Android App 的输入框中,但是仅支持 ASICC 字符,也就是不能够输入中文字符。好在 senzhk 写了一个 ADB 虚拟键盘输入法,通过监听 ADB 广播事件接收 ADB 发送的 Unicode 编码字符串,然后输入到文本框中,可以绕过这个限制。

操作步骤

  • 安卓手机安装 ADBKeyBoard.apk

  • 将手机默认输入法切换为 ADB KeyBoard

  • 手机连上电脑,在输入框输入 adb shell am broadcast -a ADB_INPUT_TEXT --es msg '可爱小姐姐你好呀' 即可输入中文字符;

代码实现

完整代码请参考 wangshub/Douyin-Bot

1
2
3
4
5
6
7
8
9
10
11
12
13
def auto_reply():
msg = "垆边人似月,皓腕凝霜雪。就在刚刚,我的心动了一下,小姐姐你好可爱呀_Powered_By_Python"
tap(config['comment_bottom']['x'], config['comment_bottom']['y'])
time.sleep(1)
tap(config['comment_text']['x'], config['comment_text']['y'])
time.sleep(1)
cmd = 'shell am broadcast -a ADB_INPUT_TEXT --es msg {text}'.format(text=msg)
adb.run(cmd)
time.sleep(1)
tap(config['comment_send']['x'], config['comment_send']['y'])
time.sleep(0.5)
cmd = 'shell input keyevent 4'
adb.run(cmd)

存在的问题

  • ADB 不支持 Unicode 编码,所以需要用 ADB KeyBoard 操作比较繁琐;
  • 再者 ADB 是对屏幕坐标点击,存在屏幕分辨率适配的硬伤;
  • 针对上面的两个问题,可以使用 App 自动化测试工具 Appium 解决,后面再找机会把坑填上;

总结

小孩子不要玩抖音 !小孩子不要玩抖音! 太耗时间了,每天在安装了又卸载,卸载了又安装的 Loop 中循环 O_O

送人一赞,手留余香 🌹 作者:神奇的战士 https://github.com/wangshub 欢迎关注我的公众号【神奇的战士】,期待跟你分享有趣的代码 ~