如何解决在 discord.py ratelimit 上做一些事情
我希望你们都有一个美好的白天/夜晚。
我有一个在云端运行的 Discord 机器人,当我的共享 IP 达到每秒 50 个请求的速率限制时,我的机器人会被阻止一段时间(我知道,这是一个糟糕的系统,但它就是我所在的地方)。如果发生这种情况,我希望它在另一个站点上向我发送消息。我有一种发送消息的方法(使用 Twitter 的 Tweepy 模块),但是当我使用以下代码时没有任何反应:
@client.event
async def on_error(ctx,error):
if isinstance(error,discord.errors.HTTPException):
#do something
我做错了吗?谢谢!
解决方法
由于您的速率限制只能由某些命令触发,并且您只能在之后在控制台中收到消息,因此使用 on_command_error
事件是有意义的。
看下面的代码:
@client.event
async def on_command_error(ctx,error):
if isinstance(error,discord.HTTPException):
await ctx.send("You are ratelimited") # Send whatever you want.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。