繁体   English   中英

推特使用tweepy直播

[英]tweets live streaming using tweepy

我正在使用Tweepy访问流API,并将其存储在JSON文件中。 代码看起来不错,但我不断收到此错误:AttributeError:'NoneType'对象没有属性'strip'

import sys
import tweepy
import json

consumer_key = 'XXXX'
consumer_secret = 'XXXX'
access_key = 'XXXX'
access_secret = 'XXXX'

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)
file = open('today.txt', 'a')

class CustomStreamListener(tweepy.StreamListener):
    def on_status(self, status):
        print (status.text)

    def on_data(self, data):
        json_data = json.loads(data)
        file.write(str(json_data))

    def on_error(self, status_code):
        print >> sys.stderr, 'Encountered error with status code:', status_code
        return True # Don't kill the stream

    def on_timeout(self):
        print >> sys.stderr, 'Timeout...'
        return True # Don't kill the stream

sapi = tweepy.streaming.Stream(auth, CustomStreamListener())
sapi.filter(track=['twitter'])

错误在最后一行。 我认为该流返回null,因此当我尝试对其进行过滤时,它给出了错误。 请帮忙 !

从10月18日起,不再维护Tweepy,但这不是问题的原因。

自10月21日对DYN发起攻击以来,twitter流API一直遇到问题。 这些已在Twitter开发者论坛上进行了报道,并且Twitter工作人员已意识到该问题: https : //twittercommunity.com/t/issues-reported-with-streams-since-10-21/76429

到目前为止,对于导致问题的原因还没有一个明确的答案,但是观察到的行为是,与Twitter的任何流终结点的连接都在短时间后关闭(通常(尽管并非总是))而没有收到任何数据。 有时在发送响应时会关闭连接,从而导致无效的JSON。

我认为这是一个lib问题,我的代码今天也是如此。 我看到该库不再维护。 可能我们必须更改库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM