2015-09-26 77 views
0

我使用tweepy來查找包含某個詞的推文,但我只想從最後五分鐘獲取最新的推文。我將如何去做這件事?這是我目前的代碼。關於python tweepy的最新推文?

import tweepy 

consumer_key = "**********" 
consumer_secret = "**********" 

auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 
auth.set_access_token("**********", "**********") 

api = tweepy.API(auth) 

public_tweets = api.search(q = "", since = "2015-09-26", language = "EN") 
for tweet in public_tweets: 
    print(tweet.text) 

回答

0

首先:我編輯了您的帖子以刪除您的憑據,我建議您從twitter中獲取新的並且不再分享它們。

還將您的api.search(Rest API)更改爲Streaming API。這將爲您提供一部分與您打開該連接時符合條件的推文。

例如

from tweepy import Stream 
from tweepy import OAuthHandler 
from tweepy.streaming import StreamListener 

consumer_key = '****' 
consumer_secret = '****' 
access_token = '****' 
access_secret = '****' 


class Listener(StreamListener): 

    def on_status(self, status): 

     try: 

      print(str(status.text.encode('utf-8'))) 

     except Exception as e: 
      print(e) 

    def on_error(self, status_code): 
     print(status_code) 


while True: 
    try: 
     auth = OAuthHandler(consumer_key, consumer_secret) 
     auth.set_access_token(access_token, access_secret) 
     twitterStream = Stream(auth, Listener()) 

     twitterStream.filter(q=['python']) 

    except Exception as e: 
     print(e) 
+0

我怎麼會顯示微博?這是代碼我現在: 'CONSUMER_KEY = 「」''CONSUMER_SECRET = 「」 AUTH = tweepy.OAuthHandler(CONSUMER_KEY,CONSUMER_SECRET) API = tweepy.API(AUTH) 類MyStreamListener(tweepy.StreamListener): DEF on_status(個體,狀態): 打印(status.text) myStreamListener = myStreamListener() myStream = tweepy.Stream(AUTH = api.auth,聽者= myStreamListener) CONSUMER_KEY = 「」 CONSUMER_SECRET = 「」 auth.set_access_token(「」,「」) print(myStream)' –

+0

'print(status.text)'is顯示實際的推文。刪除'print(myStream)'。你沒有收到任何東西嗎? – Leb

+0

沒有得到任何東西 –