İşte en az çalışan bir örnek (sahte anahtarları gerçek olanlarla değiştirdiğinizde).
import tweepy
from math import ceil
def get_authorization():
info = {"consumer_key": "A7055154EEFAKE31BD4E4F3B01F679",
"consumer_secret": "C8578274816FAEBEB3B5054447B6046F34B41F52",
"access_token": "15225728-3TtzidHIj6HCLBsaKX7fNpuEUGWHHmQJGeF",
"access_secret": "61E3D5BD2E1341FFD235DF58B9E2FC2C22BADAD0"}
auth = tweepy.OAuthHandler(info['consumer_key'], info['consumer_secret'])
auth.set_access_token(info['access_token'], info['access_secret'])
return auth
def get_tweets(query, n):
_max_queries = 100 # arbitrarily chosen value
api = tweepy.API(get_authorization())
tweets = tweet_batch = api.search(q=query, count=n)
ct = 1
while len(tweets) < n and ct < _max_queries:
print(len(tweets))
tweet_batch = api.search(q=query,
count=n - len(tweets),
max_id=tweet_batch.max_id)
tweets.extend(tweet_batch)
ct += 1
return tweets
Not: (mevcut olan 100 isteniyor rağmen ve 100) Olay mahalinin bir kullanmayı deneyin, ama twitter api bazen 100'den az sonuçları döndürür. Bunun neden böyle olduğundan emin değilim, ancak tweet_batch boşsa döngüyü kırmak için bir kontrol eklemediğim nedeni budur - query rate limit olduğu gibi böyle bir çek eklemeniz gerekebilir.
başka Not: gibi wait_on_rate_limit=True
çağırarak oran sınırını çarpmamak böylece
api = tweepy.API(get_authorization(), wait_on_rate_limit=True)
sonuç sayısını kontrol eden bir sayım parametresi var gibi görünüyor, ama sadece tüm göstermek için bir yol yoktur sonuçlar? – user1893354