gpt4 book ai didi

python - 如何使用discord py连续编辑你的昵称

转载 作者:太空宇宙 更新时间:2023-11-03 20:19:53 25 4
gpt4 key购买 nike

我正在设置不和谐机器人的最后一个功能,但在使用 task.loop 更新机器人昵称时遇到问题

我尝试了各种方法,包括与人交谈和阅读文档,我遇到的问题是你只能通过任务循环将 self 作为参数传递。我确信这是一个比我做的更容易的修复。

def get_current_price():
threading.Timer(15.0, get_current_price).start()
r = requests.get('https://www.bitmex.com/api/v1/instrument?symbol=XBT&columns=lastPrice&count=1&reverse=true')
price1 = r.json()
global price2
price2 = str(price1[0]['lastPrice'])
@tasks.loop(seconds=15.0)
async def change_nick():

代码的顶部部分使用请求来捕获来自 API 的信息,然后从我发送的参数中选择我想要的特定数字。底部只是一些关于循环的正确代码,并显示了我的计时器

我尝试使用 guild.me self.edit 和文档中找到的其他内容,但我不确定当时是否实现,并且找不到任何示例来进行逆向工程和学习。

最佳答案

为了在discord.py中更改昵称,您必须首先获取一个Member对象,不要与User对象混淆。 Member 对象指的是 Guild 中的某人,而 User 对象只是整个平台上存在的某人,您只能更改 Member 对象昵称,因为它在公会内部引用它们。

你可以通过这样做轻松做到这一点

from discord.ext.commands import MemberConverter

guild = self.bot.get_guild(yourGuildIDHere) # Get the guild in question so you can actually get a member object

converter = MemberConverter()
member = await converter.convert(guild, yourid) # convert a userid to a member object reffering to the guild.

await member.edit(nick=nicknameHere)

关于python - 如何使用discord py连续编辑你的昵称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58229981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com