如何从 tweepy 异步 on_status?

2022-01-15 00:00:00 python tweepy discord.py

问题描述

我得到的错误是:

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.

相关文章