簡體   English   中英

使用tweepy獲取用戶的舊推文

[英]Get old tweets by user using tweepy

我正在嘗試使用tweepynavalny日到navalny日收集用戶navalny的推文。 我具有所需的第一條和最后一條推文的ids ,因此我嘗試了以下代碼:

import tweepy

consumer_key = '' 
consumer_secret = ''
access_token = ''
access_token_secret = ''

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)

api = tweepy.API(auth)

t = api.user_timeline(screen_name='navalny', since_id = 933000445307518976, max_id = 936533580481814529)

但是,返回的值是一個空列表。

  • 這里有什么問題?

  • 我可以獲得的推文歷史記錄是否有限制?

  • 有什么可能的解決方案?

快速解答:使用Tweepy,您只能從Twitter REST API中檢索給定用戶的最后3200條推文。 不幸的是,您嘗試訪問的推文比這更舊。

詳細答案:我使用以下代碼進行了檢查:

import tweepy
from tweepy import OAuthHandler


def tweet_check(user):
    """
    Scrapes a users most recent tweets
    """
    # API keys and initial configuration
    consumer_key = ""
    consumer_secret = ""
    access_token = ""
    access_secret = ""
    # Configure authentication
    authorisation = OAuthHandler(consumer_key, consumer_secret)
    authorisation.set_access_token(access_token, access_secret)
    api = tweepy.API(authorisation)
    # Requests most recent tweets from a users timeline
    tweets = api.user_timeline(screen_name=user, count=2, 
                               max_id=936533580481814529)
    for tweet in tweets:
        tid = tweet.id
        print(tid)


twitter_users = ["@navalny"]

for twitter_user in twitter_users:
    tweet_check(twitter_user)

該測試在936533580481814529之前未返回任何內容

使用一個單獨的腳本,我抓取了所有3200條推文,最大的Twitter信息可讓您抓取,我可以找到的最小的推文ID為943856915536​​326662

好像您在這里遇到了Twitter對用戶時間線的推文抓取限制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM