我需要通过使用Tweepy的标准API(非高级或企业级)来获取较旧的推文,即从01-01-2019到01-12-2019

问题描述 投票:0回答:1
import tweepy
import re
import csv
import json
import got
auth = tweepy.OAuthHandler("APIKEY","APISCRETKEY")
auth.set_access_token("ACCESS-TOKEN","ACESS-TOKEN-SCRETKEY")
api = tweepy.API(auth,wait_on_rate_limit=True)

我仅在通过API凭据后才获得过去7天的数据。

follow = api.followers()
#print(follow)
tag = '#lecoqsportif OR #parfum'
fileName = '_'.join(re.findall("#(\w+)",tag))
print(fileName)
with open('%s.csv' % (fileName),'w',encoding='utf-8') as file:
    w = csv.writer(file)
    w.writerow(['timestamp', 'tweet_text', 'username', 'all_hashtags', 'followers_count'])
    for tweet in tweepy.Cursor(api.search,q = tag+'-filter:retweets',lang="en").items(10000):
        w.writerow([tweet.created_at,tweet.text.replace('\n',''),tweet.user.screen_name,[e['text'] for e in tweet._json['entities']['hashtags']],tweet.user.followers_count])

即使我请求10000条记录,我也只能获得少于1000条记录,这些记录仅对应1周的数据。我想使用标准API(不是付费版本)获取过去12个月的数据。这可能吗?如果是这样,请向我提供解决方案。

python tweepy sentiment-analysis twitterapi-python
1个回答
0
投票
首先,您现在要重新生成凭据。

使用标准搜索API不可能:

请记住,搜索索引有7天的限制。换句话说,在一周以上的日期中找不到任何推文。

https://developer.twitter.com/en/docs/tweets/search/api-reference/get-search-tweets

有关降价的帮助,请参见https://stackoverflow.com/editing-help。>>

© www.soinside.com 2019 - 2024. All rights reserved.