【问题标题】:how can I stream a specific user's tweets and return them as a variable如何流式传输特定用户的推文并将它们作为变量返回
【发布时间】:2021-03-16 12:42:38
【问题描述】:

我正在尝试流式传输特定用户的推文,然后将它们作为基于事件的触发器的变量返回。我正在使用以下代码,但它似乎没有为我返回任何推文。 我只对他们的推文感兴趣而不是转推,并且想跳过不是由指定用户发布的推文。

知道我哪里出错了:

import tweepy

#API login for Twitter
consumer_key= CONSUMER_KEY
consumer_secret= CONSUMER_SECRET
access_key= ACCESS_TOKEN
access_secret= ACCESS_TOKEN_SECRET

class StreamListener(tweepy.StreamListener):
    def on_status(self, status):
        if status.user.id_str != '111111111':
            return
        tweet = status.text
        return tweet

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)

# initialize stream
streamListener = StreamListener()
stream = tweepy.Stream(auth=api.auth, listener=streamListener)
stream.filter(follow=['111111111'])

print(tweet)

【问题讨论】:

    标签: python twitter streaming tweepy


    【解决方案1】:

    以下是流式传输特定用户推文的代码:

    import tweepy
    import sys
    
    
    #API login for Twitter
    consumer_key= CONSUMER_KEY
    consumer_secret= CONSUMER_SECRET
    access_key= ACCESS_TOKEN
    access_secret= ACCESS_TOKEN_SECRET
    
    # StreamListener class inherits from tweepy.StreamListener and overrides on_status/on_error methods.
    class StreamListener(tweepy.StreamListener):
        def on_status(self, status):
            if status.user.id_str != '11111111': 
                return
            text = status.text
            print(text)
    
    
        def on_error(self, status_code):
            print("Encountered streaming error (", status_code, ")")
            sys.exit()
    
    if __name__ == "__main__":
        # complete authorization and initialize API endpoint
        auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
        auth.set_access_token(access_key, access_secret)
        api = tweepy.API(auth)
    
        # initialize stream
        streamListener = StreamListener()
        stream = tweepy.Stream(auth=api.auth, listener=streamListener,tweet_mode='extended')
        stream.filter(follow=['11111111']) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多