如何解决收听实时推文的最快方法
我正在寻找最快的方法来检查特定用户 (TwitterID) 是否实时发了推文。为了实现这一点,我使用了 Tweepy 和流函数,这会在大约 -+5 秒内收到推文的通知。有没有更快的方法来检查是否有人通过使用其他库/请求或代码优化来发推?
提前致谢。
import tweepy
TwitterID = "148137271"
class MyStreamListener(tweepy.StreamListener):
def __init__(self,api):
self.api = api
self.me = api.me()
def on_status(self,tweet):
#Filter if ID has tweeted
if tweet.user.id_str == TwitterID:
print("Tweeted:",tweet.text)
def on_error(self,status):
print("Error detected")
print(status)
# Authenticate to Twitter
auth = tweepy.OAuthHandler("x")
auth.set_access_token("Y","Z")
# Create API object
api = tweepy.API(auth,wait_on_rate_limit=True,wait_on_rate_limit_notify=True)
tweets_listener = MyStreamListener(api)
stream = tweepy.Stream(api.auth,tweets_listener)
stream.filter([TwitterID])
解决方法
我认为大约 5 秒是合理的延迟,因为您的程序与 Twitter 的核心系统不在同一台服务器上运行。您会受到网络和 API 延迟的影响,而这些都是您无法控制的。没有真正的方法可以重写此逻辑来更改发布推文和它到达 API 之间的时间。如果你想一想 Twitter 内部发生的内部事情,从发布的推文并将其散播给潜在的数百万粉丝,那么 API - 在未知网络连接的末尾 - 在
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。