我正在用 tweepy 制作一个推特监视器,它每秒通过 user_timeline(user, count=2) 从一个帐户获取最新的 2 条推文,如果它们是新推文,它会发送一个不和谐通知。
对于像我这样的小帐户,这一切都运行良好,我的帐户中只有几条推文。自推文创建以来,它的延迟只有 0.5 秒。现在我正在使用更大的帐户进行测试,例如创建的推文总数超过 1000 条。现在延迟低至 2 秒,最长可达 30 秒。
你知道为什么会这样吗?还有其他更有效的方法来完成同样的任务吗?我一开始以为是因为它默认获取最新的 200 条推文,但我通过在 user_timeline 函数中添加“count=2”来更改它,延迟仍然相同。
PD:我使用仅限应用程序的身份验证,这是我的代码的一部分:
async def monitor_user(self, api, username, last_updated):
data = []
try:
fut = self.client.loop.run_in_executor(
None, lambda: api.user_timeline(username, count=2)
)
await fut
tweets = fut.result()