【问题标题】:How do I get the tweet someone is mentioning my bot's username in reply to with Tweepy?我如何获得有人提到我的机器人用户名以回复 Tweepy 的推文?
【发布时间】:2021-04-01 15:15:18
【问题描述】:

我正在尝试使用 Tweepy 创建一个 Twitter 机器人来回复提及,但需要处理提及正在回复的推文。除了如何获取提及正在回复的推文之外,我已经弄清楚了其他所有事情。我已经多次查看文档,但无法找到一种方法来做到这一点。非常感谢任何帮助。

【问题讨论】:

  • 显示我们可以简单地复制和运行的最小工作代码。

标签: python python-3.x api tweepy twitterapi-python


【解决方案1】:

让您的机器人回复用户的 screen_name 是我认为您在这里所要求的。您需要:

  1. 类 MyStreamListener(tweepy.StreamListener)

  2. 在类内部,函数 on_status(self, status) 和 on_error(self, status_code)

     class MyStreamListener(tweepy.StreamListener):
           def on_status(self, status):
               name = status.user.screen_name
               id_str = status.id_str
    
               message = " // < message > //"
               reply_tweet = "@" + str(name) + " " + message
    
               api.update_status(reply_tweet, in_reply_to_status_id= id_str)
               print(" <tweet received> " + status.text)
               print(" tweet sent back > " + reply_tweet)
    
          def on_error(self, status_code):
              if status_code == 420:
                 print("rate limit reached") 
                 return False
    

我建议在 while 循环函数中设置一个计时器以避免速率限制

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-13
    • 2021-04-19
    • 2014-11-14
    • 2021-08-04
    • 1970-01-01
    • 2015-03-12
    • 1970-01-01
    • 2020-11-04
    相关资源
    最近更新 更多