【发布时间】:2017-06-22 20:30:29
【问题描述】:
我有一个问题,无法找到解决方案.. 我已经编写了一个 python 脚本来流 twitter 推文。 我的问题是我需要为给定列表中的每个单词阅读 5 条推文。
下面是代码:
class TweetListener(StreamListener):
def on_status(self,status):
print "TWEET ARRIVED!!!"
print "Tweet Text : %s" % status.text
print "Author's name : %s" % status.author.screen_name
print "Time of creation : %s" % status.created_at
print "Source of Tweet : %s" % status.source
time.sleep(10)
return True
def on_error(self, status):
print status
if status == 420:
print "Too soon reconnected, Exiting!!"
return False
sys.exit()
def search_tweets():
twitterStream = Stream(connect().auth, TweetListener())
twitterStream.filter(track=['Cricket','Maths','Army','Sports'],languages = ["en"],async=True)
这里我需要为 Cricket、Maths、Army 和 Sports 分别获取 5 条推文
我得到的是上述元素的无数推文。
我们将不胜感激。
感谢和问候。
【问题讨论】:
-
你的代码中应该限制返回推文的数量?
-
啊,是的。我需要为每个项目提供有限数量的推文,比如每个项目只有 4 或 5 条推文
-
流媒体的整个想法是获得无限数量的推文。您需要在收集到您心中想要的推文后关闭流,或者使用 RESTful api 并以这种方式检索您想要的(过去)推文数量
-
好的,我可以获取推文到达的元素名称吗?就像“板球”的推文到达……打印声明的其余部分在这里……。“体育”的推文到达……打印声明的其余部分在这里……
-
您为什么要为此使用
StreamListener?您是否需要在推文发生时返回推文,或者您对已经存在的推文感兴趣?
标签: python twitter filter stream tweepy