加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 通过twitter流API 1.1获取提及和DM? (使用twython)

发布时间:2020-12-16 21:52:08 所属栏目:Python 来源:网络整理
导读:我正在使用twython(用于python的twitter API库)连接到流API,但我似乎只获得可能通过单词过滤的公共twitter流.有没有办法获得经过身份验证的用户时间线或@mentions的实时流? 我一直在循环调用REST API以获取这些提及但是twitter不喜欢我提出这么多请求. Twyt

我正在使用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流媒体.

这有点棘手,流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']

此脚本将打印所有新消息 – 而不是在启动脚本之前已收到的消息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读