Python Twython从用户获取推文

Python Twython从用户获取推文,python,twitter,twython,Python,Twitter,Twython,我正在使用Twython获取推特流。我使用了教程,希望我没有使用GPIO 我的代码如下: import time from twython import TwythonStreamer TERMS='#stackoverflow' APP_KEY='MY APP KEY' APP_SECRET='MY APP SECRET' OAUTH_TOKEN='MY OATH TOKEN' OAUTH_TOKEN_SECRET='MY OATH TOKEN SECRET' class BlinkyS

我正在使用Twython获取推特流。我使用了教程,希望我没有使用GPIO

我的代码如下:

import time
from twython import TwythonStreamer

TERMS='#stackoverflow'

APP_KEY='MY APP KEY'
APP_SECRET='MY APP SECRET'
OAUTH_TOKEN='MY OATH TOKEN'
OAUTH_TOKEN_SECRET='MY OATH TOKEN SECRET'

class BlinkyStreamer(TwythonStreamer):
    def on_success(self, data):
        if 'text' in data:
            print data['text'].encode('utf-8')
try:
        stream = BlinkyStreamer(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
        stream.statuses.filter(track=TERMS)
except KeyboardInterrupt
输出包含
#stackoverflow
的所有推文流。但如果推文来自某个用户,我想输出推文,例如@StackStatus

我用树莓皮做的

我该怎么做?感谢您的帮助


编辑:如果有其他或更简单的方法在某个用户发布新tweet时执行某些脚本,请告诉我,这也可以解决我的问题

您应该为过滤器提供
follow
参数,以流式传输特定用户的推文。 如果只希望跟踪一个用户,可以定义
FOLLOW='StackStatus'
并将相应的行更改为
stream.statuses.filter(track=TERMS,follow=follow)

如果您希望查看所有用户的推文,而不考虑关键字,则可以省略
track
参数:

stream.statuses.filter(follow=follow)
“follow”参数不能像teknoboy上面所说的那样工作。正确的用法是使用用户的ID,而不是他们的屏幕名称。您可以使用获取用户ID

第三个可用参数是位置-您可以根据需要使用1、2或3个参数。它们与“或”联系在一起,而不是与“和”联系在一起

用法示例:

SearchTerm='abracadabra'#如果包含空格,则它们是'OR',即查找包含任意一个单词的推文,而不是整个字符串。
Tweeter='25073877'#我是唐纳德·特朗普,找到他发来的推文或提到他
地点=“47.405,-177.296,1mi”#从拉特1英里以内发出,长

stream.statuses.filter(track=SearchTerm,follow=Tweeter,location=Place)