Python Discord.py - discord.Message.author输出一个奇怪的结果

时间:2018-01-03 15:07:51

标签: python python-3.x discord discord.py

我是Discord API的新手,我正在尝试制作自己的机器人。我试图让它记录发送消息的人的昵称(不是用户名)" -clan"。例如:

Surge - Today at 15:01
-clan

这应输出结果" Surge"。

然而,相反,它输出:

surge epic bot!!!BOT - Today at 15:01
<member 'author' of 'Message' objects>

我无法弄清楚为什么会这样做,所以我们会非常感谢一些意见。

我目前的代码:

@client.event
async def on_message(message):
    if message.content.startswith("-clan"):
        await client.send_message(message.channel, discord.Message.author)

谢谢!

3 个答案:

答案 0 :(得分:1)

只需discord.Message.author.name,name就是discord.Author类的一个属性。

答案 1 :(得分:0)

import { FormControl } from '@angular/forms'; import { Injectable ,Injector} from '@angular/core'; import { AbstractControl } from '@angular/forms'; import { StorageService } from '../../shared/service/storage.service'; @Injectable() export class ValidatorService { moment: any; constructor(private storageService: StorageService) {} public addressValidator(control:FormControl) { console.log('want to use service here '); if (conditionNotFullfill) { return { address: false; } } return null; } } 将作者对象的await client.send_message(message.channel, discord.Message.author)发送到邮件所在的频道。

您想要的是__repr__,因为第二个参数是您要发送的消息,第一个参数是目的地。

看起来你把命令放在一个大的on_message事件切换案例中,如果我没有弄错你就是;我不推荐这个。相反,使用await client.send_message(message.channel, 'Surge!')扩展名,discord.py的异步分支不能很好地记录这个并且大部分都没有使用,首先我建议您使用rewrite branch of discord.py并阅读有关{{3}的文档}。

答案 2 :(得分:0)

要发送消息作者,只需使用import java.net.URI; import java.awt.Desktop; java.awt.Desktop desktop = java.awt.Desktop.getDesktop(); String arg="Your URI here"; java.net.URI uri = new java.net.URI( arg ); desktop.browse( uri );