【问题标题】:How to make my Twitter bot only reply to recent tweets如何让我的 Twitter 机器人只回复最近的推文
【发布时间】:2015-03-12 00:41:53
【问题描述】:

我一直在尝试学习如何制作一个 twitter 机器人,我做了一个简单的搜索和回复机器人,它会搜索任何人在推特上发布我的名字并回复,但是我的机器人一直在回复相同的推文并且再次。我尝试在循环中添加一个 since 变量,该变量在我通过所述推文的 ID 回复推文时更新,然后我使用 since_id = since 优化了搜索查询,但什么也没做,有什么建议吗?这是我的代码:

import os
import random
import tweepy

consumer_key = os.environ.get('TWITTER_CONSUMER_KEY')
consumer_secret = os.environ.get('TWITTER_CONSUMER_SECRET')
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
access_token = os.environ.get('TWITTER_ACCESS_TOKEN')
access_token_secret = os.environ.get('TWITTER_ACCESS_TOKEN_SECRET')
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
replies = ["example 1", 
           "example 2", 
           "example 3"
          ]  
if __name__ == "__main__":
twitter = TwitterAPI()
since = 0
while True:
    tweets = api.search(q="shalash -shalashtein -OsamaAhmadSalas -ShalashteinBot -ghghgu38678638 -athy_shalash",since_id=since) #I added these exclusions because the bot was searching screen names too 
    for s in tweets:
        since = s.id
        rand = random.choice(replies)
        sn = s.user.screen_name
        m = "@%s %s" % (sn,rand)
        s = api.update_status(m, s.id)
    time.sleep(60)

【问题讨论】:

    标签: python twitter


    【解决方案1】:

    将您已回复的推文保存到数据库或文本文件中,然后检查您是否已回复。

    【讨论】:

      猜你喜欢
      • 2021-08-04
      • 2021-09-02
      • 1970-01-01
      • 2020-09-16
      • 1970-01-01
      • 1970-01-01
      • 2020-12-09
      • 2021-04-01
      • 1970-01-01
      相关资源
      最近更新 更多