discord.py logs_from无法正常工作

时间:2017-09-13 23:02:48

标签: python discord.py

我正在尝试从服务器获取大量消息,所以我正在制作测试脚本,并且logs_from()不起作用,我认为它应该如何,我不知道我是否使用它错误或什么,我我正在使用python 3.5,以及pypi上最新版本的discord.py

@client.event
@asyncio.coroutine
def on_message(message):
    number = 200
    x = client.logs_from(message.channel, limit = number)
    print(x[1])

我收到错误

TypeError: 'LogsFromIterator' object does not support indexing

1 个答案:

答案 0 :(得分:1)

Client.logs_from是一个协程,意味着你必须首先等待它。它还返回一个迭代器,而不是一个列表,所以你应该迭代它,而不是索引它。

Python 3.5示例:

async def get_logs_from(channel):
    async for m in client.logs_from(channel):
        print(m.clean_content)

Python 3.4示例:

@asyncio.coroutine
def get_logs_from(channel):
    logs = yield from client.logs_from(channel):
    for m in logs:
        print(m.clean_content)