似乎用tweepy我只能使用user_timeline方法获得200条推文。
class Twitter_User():
def __init__(self,id,count=200):
self.id = id
self.count = count
self.data = None
def get_tweets(self):
store_tweets = api.user_timeline(self.id, count=self.count)
simple_list = []
for status in store_tweets:
array = [status._json["text"].strip(), status._json["favorite_count"], status._json["created_at"],status._json["retweet_count"],[h["text"] for h in status._json["entities"]["hashtags"]]]
simple_list.append(array)
self.data = pd.DataFrame(simple_list, columns=["Text", "Like", "Created at","Retweet","Hashtags"])
self.data = self.data[~self.data["Text"].str.startswith('RT')]
return self.data
def __repr__(self):
id = api.get_user(self.id)
return id.screen_name
如果我把self.count作为一个大于200的数字,我总会得到一个200行的数据帧,相反,如果我把一个较小的数字,我得到正确的行数。我不知道,有限制还是我必须使用其他方法?
答案 0 :(得分:4)
一次请求中最多只能获得200条推文。但是,您可以连续请求旧推文。您可以在时间轴中获得的最大推文数为3200.引用为here。
你可以用tweepy做到这一点,但你需要使用tweepy的Cursor来获取这些连续的推文页面。看看this让你入门。
答案 1 :(得分:1)
根据Twitter API docs,您可以从Office.all().then(function (data) {
console.log(data);
$scope.officeList = data;
});
检索的最多记录为200
从count参数的定义:
指定尝试和检索的推文数量,每个不同请求最多200个。 count的值最好被认为是要返回的推文数量的限制,因为在应用计数后删除了暂停或删除的内容。即使未提供include_rts,我们也会在计数中包含转推。建议您在使用此API方法时始终发送include_rts = 1。
来自api.py第114行的tweepy source code:
/statuses/user_timeline/
答案 2 :(得分:0)
要获得大于200的值,您需要在cursor
上使用user_timeline
,然后遍历页面。
import tweepy
# Consumer keys and access tokens, used for OAuth
consumer_key = ''
consumer_secret = ''
access_token = ''
access_token_secret = ''
# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
# Creation of the actual interface, using authentication
api = tweepy.API(auth)
for pages in tweepy.Cursor(api.user_timeline, id='id', count=200).pages():
print(pages)
答案 3 :(得分:0)
使用tweepy游标, #MuniLima 是推特账号, #最初为空的列表,它们以For循环开始。存储高音值:'create_at','favourite_count','text'
tweeteo=[]
likes=[]
time = []
for tuit in tweepy.Cursor(api.user_timeline,screen_name='MuniLima').items(2870):
time.append(tuit.created_at)
likes.append(tuit.favorite_count)
tweeteo.append(tuit.text)