我设置了我的Discord机器人的最后一个功能,并遇到了使用task.loop更新bot昵称的问题
我尝试了各种与人交谈和阅读文档的方法,但问题是您只能通过任务循环将自我作为参数。我确定这是一个简单的解决方法,然后即时进行。
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的信息,然后从我发送的参数中选择我想要的特定编号。底部只是ik在循环中正确显示的代码,并显示了我为此准备的计时器
我曾尝试使用guild.me self.edit和其他在文档中找到的内容,但是我不确定当时是否在实施,并且找不到任何可以反向工程和向其学习的示例。
答案 0 :(得分:0)
要更改discord.py中的昵称,必须首先获得一个Member
对象,不要与User
对象混淆。 Member
对象是指位于Guild
中的某人,而User
对象只是整个平台上存在的某人,您只能更改{{1 }}对象的昵称,因为它是在公会中引用它们的。
您可以轻松地做到这一点
Member