【问题标题】:Tweepy get tweets by dateTweepy 按日期获取推文
【发布时间】:2020-12-26 05:32:17
【问题描述】:

我想在日期之间获取某个主题的推文。这在 tweepy 中可能吗? (或任何其他 twitter 的 API?)

我可以通过使用 ID 让它为 user_timeline 工作,但是当我将它更改为使用 api.search 时,程序基本上只是继续运行而没有任何输出

def getTweets(username):
    tweets = []
    tmpTweets = api.user_timeline(username, tweet_mode = 'extended', include_rts=True)
    for tweet in tmpTweets:
        if tweet.created_at < endDate and tweet.created_at > startDate:
            tweets.append(tweet)

        while (tmpTweets[-1].created_at > startDate):
            tmpTweets = api.user_timeline(username, max_id = tmpTweets[-1].id,tweet_mode = 'extended')
            for tweet in tmpTweets:
                if tweet.created_at < endDate and tweet.created_at > startDate:
                    tweets.append(tweet)
    return tweets

tl;dr: python 有没有办法根据关键字搜索在两个日期之间获取推文?

【问题讨论】:

  • 是的,但免费搜索 API 仅涵盖过去 7 天。那是 Twitter API 而不是 Tweepy。

标签: python twitter tweepy


【解决方案1】:

使用 cursor 怎么样:

text_query = 'Coronavirus'
since_date = '2020-02-10'
until_date = '2020-08-10'
max_tweets = 150

# Creation of query method using parameters
tweets = tweepy.Cursor(api.search,q=text_query, since=since_date, until=until_date).items(max_tweets)

在此blog 和此answer 中也有描述。

【讨论】:

    猜你喜欢
    • 2015-08-02
    • 2018-09-18
    • 2020-03-12
    • 1970-01-01
    • 2021-03-10
    • 2020-09-07
    • 2017-08-20
    • 2016-10-20
    • 2017-03-29
    相关资源
    最近更新 更多