如何从 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 看起来像这样:
My stdOutListener looks like this:
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 中的大部分内容
I understand that I need to get on_status called async'd, but how do I do this? I've tried awaiting most of the things inside on_status
解决方案
Tweepy 还没有 asyncio 支持.为此,请参阅 https://github.com/tweepy/tweepy/issues/732.
Tweepy doesn't yet have asyncio support. For that, see https://github.com/tweepy/tweepy/issues/732.
相反,您可以使用 is_async
参数在单独的线程中运行流.请参阅 https://tweepy.readthedocs.io/en/latest/streaming_how_to.html#async-streaming.
Instead, you can use the is_async
parameter to run the stream in a separate thread.
See https://tweepy.readthedocs.io/en/latest/streaming_how_to.html#async-streaming.
相关文章