tweepy stream.filter()方法不能正常工作
题
我有一些问题与tweepy API。
我只是试着写一个小的应用程序,让我一个用户(或多个)的状态流,但一个就可以了下手; - )
现在:我的代码是这样的:
def main():
config = ConfigParser.ConfigParser()
config.read('twitter.cfg')
username = config.get('Twitter', 'username')
password = config.get('Twitter', 'password')
listener = StreamWatcherListener()
stream = tweepy.Stream(username, password, listener, timeout=None)
stream.filter('132897940')
在StreamWatcherListener我有一个方法“on_status”,打印的状态,每当一个新的到达(似乎一切工作,当我尝试stream.sample()而不是stream.filter())
给定的ID是我testaccount,所以每当我鸣叫,我应该在控制台中的一些响应....但没有任何反应。
当我尝试
curl -d @following http://stream.twitter.com/1/statuses/filter.json -uAnyTwitterUser:Password
在如我可以在Twitter的API找到终端,一切都正常运行。
所以,也许我做了错误的过滤器的使用() - 方法
?任何建议?
-andy
解决方案
我发现它自己
的 stream.filter()
方法需要的阵列
,所以我不得不代码
stream.filter(['1234567'])
等瞧
其他提示
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)
下面我使用的异步参数,它运行在不同的线程的每个流。 参阅对文档或更多的细节此链接。
不隶属于 StackOverflow