我的代码是这样,但输出很糟糕
import os
import discord
import asyncio
from discord.ext import tasks, commands
client = discord.Client()
@client.event
async def on_ready():
print(f'Connected to Discord!')
channel = client.get_channel(231231321213)
messages = await channel.history(limit=1).flatten()
print(messages)
client.run('token', bot=False)
我的输出:
连接到 Discord!
[
文件“C:\Users\cinar\untitled0.py”,第 18 行,在 client.run('Bot Token', bot=False)
文件“D:\Users\cinar\anaconda3\lib\site-packages\discord\client.py”,第 714 行,运行中 _cleanup_loop(循环)
文件“D:\Users\cinar\anaconda3\lib\site-packages\discord\client.py”,第 95 行,在 _cleanup_loop loop.close()
文件“D:\Users\cinar\anaconda3\lib\asyncio\selector_events.py”,第 89 行,关闭 raise RuntimeError("无法关闭正在运行的事件循环")
运行时错误:无法关闭正在运行的事件循环
答案 0 :(得分:0)
我认为您正在尝试使用实际的机器人令牌进行自我机器人,我不建议继续这样做,因为自我机器人违反了 ToS。但是,如果您确实想这样做,请使用您的电子邮件和密码而不是机器人令牌。我要再次警告您,self botting 违反 ToS,可能会导致您的帐户被禁止,因此请自行承担风险。无论如何,有人已经问过如何以用户身份登录 here.
同样,正如我之前在评论中所说,我查看了 discord.py 文档并发现 history()
正在产生消息。所以也许你应该尝试做 print(message[0].content)
。