如何在没有过滤器的情况下使用tweepy

时间:2014-12-17 16:30:21

标签: python python-3.x twitter tweepy

我是tweepy图书馆的新手。如果我使用如下所示的过滤器,我可以捕获推特流,在文本​​字段中查找包含单词snow的推文。

import tweepy
ckey = ''
csecret = ''
atoken = ''
asecret = ''
auth = OAuthHandler(ckey, csecret)
auth.set_access_token(atoken, asecret)
twitterStream = Stream(auth, listener())
twitterStream.filter(track=["snow"])

但是,我不知道如何在不进行任何过滤的情况下捕获所有推文。如果我不使用上面代码的最后一行,该程序会运行,但我不会收到任何推文。如果我将track参数更改为track=[]track=[""],我会从Twitter API收到错误代码406.

我使用的是Python 3.4.2。

3 个答案:

答案 0 :(得分:3)

您可以使用padding-top: 10px; padding-bottom: 10px; 作为最后一行。它将为您提取所有推文。

答案 1 :(得分:2)

不要按位置搜索。它会限制那些没有启用地理位置的推文。我建议使用stream.sample()代替。它没有任何必要的参数。有关详细信息,请参阅tweepy文档。

答案 2 :(得分:0)

流API只能与至少一个谓词参数一起使用,如twitter documentation中所指定。
幸运的是,还有一个locations参数,你可以传递值[-180,-90,180,90]来获取地球上每个点的推文。

所以,在上面的代码段中,最后一行应该是:
twitterStream.filter(locations=[-180,-90,180,90])

您将获得的唯一过滤是用户不得关闭地理标记。