我正在使用twython(用于python的twitter API库)连接到流API,但我似乎只获得可能通过单词过滤的公共twitter流.有没有办法获得经过身份验证的用户时间线或@mentions的实时流?
我一直在循环调用REST API以获取这些提及但是twitter不喜欢我提出这么多请求.
Twython文档对我没什么帮助,官方Twitter文档也没有.
如果有另一个python库可以比twython更好地工作流(对于Twitter API v1.1).我很感激这个建议……谢谢.
最佳答案
在我的研究开始时,我认为python-twitter是Python的推特库.但最后,似乎Python Twitter Tools更受欢迎,并支持Twitter流媒体.
原文链接:/python/439559.html这有点棘手,流API和REST api对于直接消息不相等.这个小示例脚本演示了如何使用用户流来获取直接消息:
import twitter # if this module does not
# contain OAuth or stream,# check if sixohsix' twitter
# module is used!
auth = twitter.OAuth(
consumer_key='...',consumer_secret='...',token='...',token_secret='...'
)
stream = twitter.stream.TwitterStream(auth=auth,domain='userstream.twitter.com')
for msg in stream.user():
if 'direct_message' in msg:
print msg['direct_message']['text']
此脚本将打印所有新消息 – 而不是在启动脚本之前已收到的消息.