有没有一种方法可以只在特定时间使用python流式传输推文



我正在开发tweepy来流式传输tweet。

据我所知,我们可以启动流媒体,让它无限期地运行,以处理推文。

我正在寻找一种方法来限制这个流,并在大约10分钟后退出流,我们可以指定。

从文件中,我找不到任何可以这样做的东西。(我可能也错过了。(

如何指定流媒体可以持续收听推文的时间。

import json
from tweepy import StreamListener, OAuthHandler, Stream

class StdOutListener(StreamListener):
def __init__(self):
self.hashtag_frequency = {}
def on_data(self, data):
hashtags = json.loads(data)["entities"]["hashtags"]
for hashtag in hashtags:
text = hashtag["text"]
self.hashtag_frequency[text] = self.hashtag_frequency.get(text, 1) + 1
print(self.hashtag_frequency)
return True
def on_error(self, status):
print(status)

listener = StdOutListener()
auth = OAuthHandler('', '')
auth.set_access_token('', '')
stream = Stream(auth, listener)
stream.filter(track=['testing'])

您可以在其中添加一个计时器,类似于在的末尾添加一个break

import time
t = #Add number of seconds you want the bot to run, if you want 10 minutes, than it's 600 seconds
if t != 0: 
mins, secs = divmod(t, 60) 
timer = '{:02d}:{:02d}'.format(mins, secs) 
print(timer, end="r")  
t -= 1
else:
return

最新更新