我已经创建了一个不和谐的价格机器人。它从API获取价格,并使用该值更新我的discord bot的昵称。但是我总是得到错误
每个电话之间我都要等大约5分钟。有人能帮我一下吗?我试着用谷歌搜索我可以给Discord打多少客户端电话,似乎我可以在一分钟内给Discord api打50个电话,而我每5分钟只打1个电话,仍然得到这个错误。我已经给了bot更改昵称的权限。我还查看了discord.py文档,但没有找到任何可以帮助我的东西。discord.errors。HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body不和谐标签太快了。
@client.event
async def on_ready():
while True:
response = await getPrice()
priceChange = response['priceChange']['h24']
if(priceChange > 0):
await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name=f'24H u2197 {priceChange}%'))
else:
await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name=f'24H u2199 {priceChange}%'))
await client.user.edit(username = '$' + str(response['priceUsd']))
print(response)
await asyncio.sleep(300)
任何帮助都将非常感激。
由于一个用户名一直跟随一个用户,Discord只允许他们每小时更改两次。基本上,Discord用户每隔30分钟只能更改一次用户名。相比之下,昵称总是处于不断变化的状态,并且它们可以更改的频率没有主要限制(了解更多)。
所以我建议您只更改bot的状态,或者,如果更改bot的名称很重要,则只需更改其在服务器上的昵称。例如,如果您想更改服务器上的昵称:
MY_GUILD_ID = 100000000000000000000
@client.event
async def on_ready():
while True:
response = await getPrice()
priceChange = response['priceChange']['h24']
if(priceChange > 0):
await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name=f'24H u2197 {priceChange}%'))
else:
await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name=f'24H u2199 {priceChange}%'))
guild = client.get_guild(MY_GUILD_ID)
await guild.me.edit(nick='$' + str(response['priceUsd']))
print(response)
await asyncio.sleep(300)