Python-Code unter Verwendung von Tweets zu sammeln und es in eine CSV-Dateiimmer diese Fehlermeldung, wenn verwendet tweepy
Fehlern
tweepy.error.RateLimitError Rückkehr hält an: [{ 'Code': 88, 'message' : ‚Rate Grenze überschritten‘}]
versuchen, die letzten Zeitleiste und senden alle diese Tweets auf die cSV-Datei
dank für jede Hilfe
def get_all_tweets(screen_name):
#authorize twitter, initialize tweepy
auth = tweepy.OAuthHandler(consumer_token, consumer_secret)
auth.set_access_token(access_token, access_secret)
api = tweepy.API(auth)
#initialize a list to hold all the tweepy Tweets
alltweets = []
new_tweets = api.home_timeline (screen_name = screen_name,count=20)
#save most recent tweets
alltweets.extend(new_tweets)
#save the id of the oldest tweet less one
oldest = alltweets[-1].id - 1
while len(new_tweets) > 0:
print ("getting tweets before %s" % (oldest))
#all subsiquent requests use the max_id param to prevent duplicates
new_tweets = api.home_timeline(screen_name = screen_name,count=20,max_id=oldest)
#save most recent tweets
alltweets.extend(new_tweets)
#update the id of the oldest tweet less one
oldest = alltweets[-1].id - 1
print ("...%s tweets downloaded so far" % (len(alltweets)))
#transform the tweepy tweets into a 2D array that will populate the csv
outtweets = [[tweet.id_str, tweet.created_at, tweet.text.encode("utf-8")] for tweet in alltweets]
#write the csv
with open('%s_tweetsBQ.csv' % screen_name, 'w') as f:
writer = csv.writer(f)
writer.writerow(["id","created_at","text"])
writer.writerows(outtweets)
pass
if __name__ == '__main__':
#pass in the username of the account you want to download
get_all_tweets("BQ")
01 zu erhalten
wäre es möglich, damit alle Tweets ab einem bestimmten Tag zu bekommen? – Barry
Wenn Sie Tweets der letzten Tage erhalten möchten, muss Ihr Code etwas optimiert und geändert werden, da die Streaming API Tweets liefert, die wie jetzt getwittert wurden. Darüber hinaus speichert Twitter Tweets bis zu einer Woche in der Vergangenheit, so dass Tweets von zwei Wochen in der Vergangenheit nicht erhalten werden können. –
Wie würde ich das machen? fügen Sie den spezifischen Tag hinzu, den ich will? – Barry