簡體   English   中英

使用 Python tweepy 查找舊推文

[英]Find old tweets using Python tweepy

蟒蛇 3.9.5

tweepy == 4.10.0

我正在嘗試使用 tweepy 獲取舊推文,但效果不佳(顯示 0 結果)。 這是我嘗試過的。

BEARER_TOKEN = "My Token"

DATE_STA = "2020-01-01T00:00:01Z"
DATE_END = "2020-06-01T23:59:59Z"

client = tweepy.Client(BEARER_TOKEN, wait_on_rate_limit=True)
user = client.get_user(username="hellopolicy")
res = client.get_users_tweets(
    user.data.id,
    end_time     = DATE_END,
    start_time   = DATE_STA,
    max_results  = 100,
    tweet_fields = ["text", "created_at", "conversation_id", "public_metrics"]
)

print(res)
# Response(data=None, includes={}, errors=[], meta={'result_count': 0})

但是,如果我使用查詢(from:hellopolicy since:2020-01-01 until:2020-06-01)從網絡上手動搜索它,我可以在此期間看到許多推文。

此行為取決於目標 ID。 他們中的大多數人正確地顯示了所有結果,但其他人(10 人中有 1 人)只顯示了幾周或什么也沒有。 ID 中的推文數量無關緊要。

為什么會發生這種情況,我怎樣才能獲得所有推文?

get_users_tweets()文檔( 見這里):

只有 3200 條最新推文可用。

因此,如果從那時起他發送了 3 200 條推文,您將無法訪問該用戶在此時間間隔內的推文。

由於您可以使用標准 API抓取的日期范圍有限,您可能不會返回任何結果。 如引述:

Twitter 搜索 API 根據過去 7 天內發布的最新推文樣本進行搜索。

我有一個腳本可能有助於在我的GitHub 上抓取舊推文以規避此問題。 希望能幫助到你。

暫無
暫無

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

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