在 Tweepy 中标记时获取推文

get tweet when tagged in Tweepy

我正在使用 tweep 和 gTTS 开发自动文本语音生成器。

我想要的是,每当用户标记我的机器人时,我的机器人将使用他们的推文生成的 TTS 响应进行回复。

例如,如果 Malcolm 发推文“@bot Banana Bread”,那么机器人将使用 mp4 语音文件回复该推文 "banana bread"

我想我可以用 gTTS 和一些乱七八糟的东西来拉动 TTS 生成。

但是我不知道如何在我被标记时自动获取推文 ID 和推文文本。

我看到的唯一方法就是不断刷新一个 example = tweepy.Cursor(api.search, q='@bot').items(1) 然后

for tweet in example:
    print tweet.text, tweet.id_str

然后存储 id,以便它只获取最新的帖子,而不会对同一条推文回复两次。

但这似乎有点多,我想知道是否有任何 faster/easier/more 有效的方法来做到这一点?

你的方法很好:存储你回复的推文 ID,并在新回复之前检查它们。随着时间的推移,可能会有很多 ID,因此您必须处理删除非常旧的 ID。

另一种方法是使用 Twitter 帐户 Activity API:通过 webhook(您的个人网络服务器的 URL),您可以获得提及事件,然后简单地回复直接。

如果我了解官方文档,1 个免费的 webhook 可以付费使用 API。

这是文档: