Python 3.x 如何获取在discord服务器上发送的最后一封邮件的内容
我正在尝试建立一个discord机器人,它在特定条件下基本上重复用户所说的话。为了简单起见,条件在问题中并不重要。我目前的策略是在满足条件时获取日志,然后重复它们。但是,我的代码不起作用。我使用的是Python3.6.4(我还没有设置repeat,我只想发送最后一条消息。) 这是我的密码:Python 3.x 如何获取在discord服务器上发送的最后一封邮件的内容,python-3.x,discord,Python 3.x,Discord,我正在尝试建立一个discord机器人,它在特定条件下基本上重复用户所说的话。为了简单起见,条件在问题中并不重要。我目前的策略是在满足条件时获取日志,然后重复它们。但是,我的代码不起作用。我使用的是Python3.6.4(我还没有设置repeat,我只想发送最后一条消息。) 这是我的密码: import discord TOKEN = 'XXXXXXXX' client = discord.Client() @client.event async def on_message(messag
import discord
TOKEN = 'XXXXXXXX'
client = discord.Client()
@client.event
async def on_message(message):
if message.author == client.user:
return
if message.content.startswith('I am'):
msg = 'Hi {0.author.mention}'.format(message)
await client.send_message(message.channel, msg)
if message.content.startswith('Logs'):
logs= logs_from(general, limit=1)
print(logs)
@client.event
async def on_ready():
print('Logged in as')
print(client.user.name)
print(client.user.id)
print('------')
client.run(TOKEN)
这个问题正在讨论中
logs=logs_from(general, limit=1)
这里是错误
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/discord/client.py", line 307, in _run_event
yield from getattr(self, event)(*args, **kwargs)
File "dadbot.py", line 17, in on_message
logs= logs_from(general, limit=1)
NameError: name 'logs_from' is not defined
请记住,这是我的第一个discord机器人,我正在努力在线查找有用的信息。从未定义来自的函数
logs\u,因此会出现错误
也许你的意思是:
logs = client.logs_from(general, limit=1)
因此,您需要客户机类中的方法log\u。非常感谢,这是有效的,但是general是未定义的,尽管我有一个名为general的文本服务器。我知道这不是原始问题的一部分,但你能帮我吗?我在上面的代码中看到一个general
字符串(并用作值),因此没有定义general
。Python是命名空间上的字符串,所以代码也是可读的。从上面的代码中,我不知道general
可能意味着什么/包含什么。您需要一个大概的general=client.get_频道(…一些…id)。