How to DM everyone in a Discord server with discord.py?(如何使用discord.py对不一致服务器中的每个人进行DM?)
本文介绍了如何使用discord.py对不一致服务器中的每个人进行DM?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
发送命令:dmall
时,我当前正在尝试让我的机器人对服务器的所有成员执行DM操作,但它似乎不起作用。
我的代码:
@bot.command()
@commands.is_owner()
async def dmall(ctx,*,message):
for mem in ctx.guild.members:
await ctx.message.delete()
try:
await mem.send(message)
await ctx.send(f'Sent dm to: {mem.name}')
except:
print('User dm closed')
@dmall.error
async def dmall_error(ctx, error):
if isinstance(error, commands.CheckFailure):
await ctx.send('sorry comrade, you arent allowed to do that')
推荐答案
没有回溯是不可能确定的,但是当您无法将DM发送给成员时,这很可能是错误的。如果成员将其隐私设置设置为不允许来自服务器成员的DM或阻止了机器人,则可能会发生这种情况。
您应该删除无法确定实际特定问题的此特定实例所表现出的捕获所有异常处理程序,这是一种不良做法,并检查回溯。
这篇关于如何使用discord.py对不一致服务器中的每个人进行DM?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:如何使用discord.py对不一致服务器中的每个人进行DM?


基础教程推荐
猜你喜欢
- kivy 应用程序中的一个简单网页作为小部件 2022-01-01
- Kivy 使用 opencv.调整图像大小 2022-01-01
- Python,确定字符串是否应转换为 Int 或 Float 2022-01-01
- 对多索引数据帧的列进行排序 2022-01-01
- Python 中是否有任何支持将长字符串转储为块文字或折叠块的 yaml 库? 2022-01-01
- matplotlib 设置 yaxis 标签大小 2022-01-01
- 比较两个文本文件以找出差异并将它们输出到新的文本文件 2022-01-01
- 在 Django Admin 中使用内联 OneToOneField 2022-01-01
- 究竟什么是“容器"?在蟒蛇?(以及所有的 python 容器类型是什么?) 2022-01-01
- 在 Python 中将货币解析为数字 2022-01-01