首页 > 解决方案 > 如何从 tweepy 异步 on_status?

问题描述

我得到的错误是:

RuntimeWarning: coroutine 'StdOutListener.on_status' was never awaited
if self.on_status(status) is False:
RuntimeWarning: Enable tracemalloc to get the object allocation traceback

我的 stdOutListener 看起来像这样:

class StdOutListener(StreamListener):

async def on_status(self, status):
    channel = await bot.get_channel(64970710814)
    await channel.send(status.text)

我知道我需要将 on_status 称为 async'd,但我该怎么做呢?我已经尝试等待 on_status 中的大部分内容

标签: pythontweepydiscord.py

解决方案


Tweepy 还没有 asyncio 支持。为此,请参阅https://github.com/tweepy/tweepy/issues/732

相反,您可以使用该is_async参数在单独的线程中运行流。请参阅https://tweepy.readthedocs.io/en/latest/streaming_how_to.html#async-streaming


推荐阅读