这是我正在使用的代码。
我得到这个错误:
username="Testing"
BADuser = await bot.fetch_user(username)
await ctx.guild.ban(BADuser, reason="Testing", delete_message_days=0)
我不知道如何仅使用每个用户的名称和唯一编号来获取雪花。因为用户不在服务器上。感谢您的帮助。机器人无法找到无法访问的用户的ID,您需要该ID才能访问该用户。您可以查看此调用的文档,这是库中唯一允许您
我目前正在使用
@命令。冷却时间(1,60,铲斗)
Discord.py命令的Decorator,这部分起作用。假设我有两个独立的函数:func_a()和func_b()。我需要这样,当用户调用func_a()或func_b()时,冷却将应用于这两个函数
示例:用户调用func_a(),用户等待10秒,但冷却时间为60秒。用户调用func_b(),bot回复“请等待50秒以使用此命令”
编辑:
使用下面的解决方案,对于那些想要黑名单(或白名单)功能的人,将代码更改为以下内容:
async
我想向邀请我的机器人进入其服务器的用户发送dm,它的工作方式与其他机器人一样,或者在用户邀请机器人进入其服务器时获得奖励。然而,在我下面的尝试中,我无法让它工作
我不确定它是否需要找到审核日志用户,但我刚刚找到了这段代码。非常感谢您的帮助
@client.event
async def on_guild_join(member):
bot_entry = await guild.AuditLogAction.bot_add).flatten()
inviter = bot_en
我正在生成一个help命令,而不是单独添加每个命令的描述、名称、别名等,我创建了一个for循环来遍历所有client.commands。但我只想显示command.type中包含type=“misc”的命令。用法、描述、别名和名称都可以正常工作,但类型不能正常工作
例如:
ping命令-
@client.command(name="ping", description="Check the bot latency.", usage='`stonk ping
我试图发出addrole命令,但它不起作用。我犯了一个错误:`undefined Variable'guild'我为列出服务器中的角色编写了代码abc=guild.roles(),但它不起作用,请提供帮助
@client.command(pass_context=True)
async def addrole(ctx, user: discord.Member, role: discord.Role):
if ctx.author.guild_permissions.administ
因此,我正在生成一个whois命令,并且我正在生成的if语句使它成为这样,如果用户没有角色,那么值=None。然而,我有麻烦了。这是密码
@commands.command(别名=[“whois”])
异步def userinfo(self、ctx、成员:discord.member=None):
如果不是成员:
成员=ctx.message.author
embed=discord.embed(color=discord.color(random.randint(116777215)),tim
我需要帮助,使机器人回应我的确切数量有多少消息被清除
我打字的时候!清除15则删除12条消息我希望它以“清除12条消息”回复我
我试过这样的方法:
@commands.command()
async def clear(self, ctx, amount=10):
await ctx.channel.purge(limit=amount)
await ctx.send(amount, 'messages cleared')
我知道这不会显示它清除了多少条消息,但会
这怎么可能呢?我正在尝试制作一个机器人,它可以显示加入语音聊天的人的姓名(通常很多人都在vc中),这样我就不必检查/询问了。你想让它用音频说话吗?或者打印或发送?我想用音频制作。音频在VC中还是在你的PC上?音频在VC中你做了什么尝试?这些文件给出了明确的例子。您可以使用discordpy的voice_客户端来实现tts库。
我已经做了谷歌助手发送消息到我的文本频道,我希望我的另一个机器人只听我的谷歌助手机器人。我找到了一个方法,有点。。。棘手的是,更改方法process_command()以避免消息id来自我的google助手时返回
我不认为这是一个好的解决方案,它只能在我的电脑上工作,它现在正在工作,另一个问题是,机器人必须在一个语音通道工作。所以我一直在想,在_message上的函数中,在message.content中使用startswith(“任意字符”),我可以过滤我的bot的消息并直接转到函数,但是我需
我想为设置所有文本频道的权限创建一个命令,但是创建这个命令有一些困难
我试过很多次了,但我不记得我必须做什么
请帮帮我,我需要一个密码
我的代码:
@bot.command()
async def close_all(ctx, *, guild: discord.Guild):
for chan in guild.channels:
await guild.channels.set_permissions(ctx.guild.default_role, send_messag
代码如下:
导入异步IO
进口不和
从discord.ext导入命令
client=commands.Bot(command_prefix=“.”)
Token=“”
@client.command()
异步def react(ctx):
消息=等待ctx发送(“测试”)
等待消息。添加\u反应(“看起来像缩进错误。check应该只在('中的一行return user==ctx.message.author和str(message.emoji))中添加一个缩进错误。check应该只在('中的一行
我试图让我的机器人在用户运行命令“!hi”时响应“hi”。问题是命令没有运行,也没有显示错误。.py文件中的代码与显示的完全相同(除了用实际的令牌替换令牌)如果您正在运行client,并使用bot.command()装饰命令,则必须使用discord.client或commands.bot,而不是两者都使用
导入不一致
从discord.ext导入命令
意图=不和谐。意图。全部()
bot=commmands.bot(command\u前缀=command.when\u提到\u或(“!”),in
我正在尝试用python制作一个discord机器人,它将我的帐户连接到一个想要的minecraft服务器,读取/发送消息,并在一个设置的通道中发送输出 这可能是一个答案
我没有时间做实验,但我想你可以用它做点什么
支持的功能
尽管pyCraft与任何受支持的服务器兼容,但库当前仅对所有数据包的子集进行解码或编码:那些保持与服务器连接所必需的数据包,那些用于聊天的数据包,以及其他一些数据包
我已经做了研究,但我没有收到最近的回复(旧的回复不起作用)来为将要发送的消息添加反应。
命令是“建议”,用于建议,我需要机器人添加反应(这是个性化表情),我该怎么办
代码:
#建议
@命令(aleases=[“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“建议”,“
我在发指令。我用的是a,但是在教程中他们这样做,当连续有3个时,你可以得到双倍的钱,而不是三倍的钱。我试过几种方法,但都不管用。有一个方法,它确实工作,但机器人发送嵌入为2和3在一行。这有点难以解释,但这里有一个例子。最终我放弃了
代码如下:
@commands.command()
@冷却时间(1,30,commands.BucketType.user)
异步def插槽(自身、ctx、金额=无):
等待开户(ctx.author)
如果金额==无:
等待ctx发送(“请输入金额”)
返回
bal
我想为我的机器人制作一个命令,在其中我们可以配置机器人可以发送的欢迎消息。因此,配置的工作原理如下:nb welcome
预期的输出是写入它的嵌入
你好!请转到以选择您的角色。
这是我的密码:
@client.command(别名=[“欢迎”])
异步定义(ctx,频道:discord.TextChannel,角色:discord.TextChannel=None):
全球频道欢迎您
全球角色欢迎
欢迎频道
如果是角色!=无:
role\u welcome=角色
其他:
角色\u欢迎=无
等待c
我注意到,当您在Discord中从Tenor发送GIF时,它会发送一个Discord.Embed,其中有一个EmbedProxy,看起来像这样:EmbedProxy(url=)https://media.tenor.co/videos/74b9d3ff72202514817a557c487a8115/mp4,宽度=640,高度=480)。尽管链接了mp4文件,Discord还是将文件渲染为gif(无视频播放器,自动播放媒体)。据我所知,Discord/Tenor这样做是为了节省存储空间,因为这是
我想确保我的机器人只响应命令/消息,并且只在一个特定通道中响应。这是否可能?我尝试了多种变体,但都没有成功。如果我能为任何事件定义它,那就更好了。有人有什么想法吗 您可以在on_message事件中检查message.channel,如果它符合您的条件,在本例中是一个特定的频道,则执行处理_命令
下面是一个示例,!ping命令仅在频道时有效。name为“常规”
from discord.ext import commands
client = commands.Bot(command_pref
我正在尝试做一个代码,你可以dm的机器人的帮助,建议,或任何,它将发送一个渠道的消息。一旦收到消息,您就可以执行.dm(user)(message),然后bot将dm用户返回。我有一些问题,我对编码很陌生,我认为我的格式已经过时了。如果有人能帮忙,那就太棒了
@vini.event
async def on_message(message):
channel = vini.get_channel('633053538334932992')
if message.guild is
我正在使用discord.py生成一个repeat命令,您在其中发送一个命令,它会重复您发送的消息。它可以工作,但唯一的问题是,如果我使用空格,例如“Hello I'm”,它只打印“Hello”。我该如何解决这个问题
这是我的密码:
import discord
import hypixel
from discord.ext import commands
bot = commands.Bot(command_prefix='>')
@bot.event
async def on_re
因此,我将发出如下欢迎命令:
@client.event
_成员_连接上的异步定义(self,*,成员:discord.member):
意思是指会员
member=discord.Guild.member
帮会,帮会
welcomz=[
“,欢迎使用服务器!”,
‘入党了!’,
“只是来吃蛋糕的。”,
“,所有人都欢迎您加入服务器!”,
“去这里做点什么吧”,
“,所以您确实知道邀请链接是如何工作的!”,
“你花了足够长的时间!”,
]
尝试:
等待self.client.get_channe
我正在使用Python版本3.8.6。。。。我想给discord机器人静音命令…但是代码不起作用
不工作
@commands.command()
async def mute(self, ctx, member : discord.Member):
try:
await member.edit(mute=True)
except:
await ctx.send('Sorry! I cant mute this member.')
--------------------
我有一个升级系统,使用discord.py,我试图制作一张等级卡,比如mee6和奥术。我想得到的图像显示用户排名和xp
这是一个有效的命令,但我想把它变成一个图像
@bot.command(aliases = ['rank','lvl'])
async def level(ctx,member: discord.Member = None):
if not member:
user = ctx.message.author
with open('leve
嗨,我试着在discord.py中创建Logger Bot
我的代码:
我得到的错误是:
Ignoring exception in on_guild_role_create
Traceback (most recent call last):
File "C:\Users\MY PC\AppData\Roaming\Python\Python38\site-packages\discord\client.py", line 343, in _run_event
我想做一个dc机器人,我想通过提到用户从语音频道踢出成员
@client.command()
async def kick(ctx):
victim = ctx.message.mentions[0]
await move_to(victim,none)
我使用这段代码,但它不起作用,它说“'Bot'对象没有'move_members'属性”
我该如何解决这个问题?您可以通过将成员的vocie\u频道设置为None将其从语音中弹出。我还使用转换器获取成员:
@client.co
标题说明了一切。。。
我想在公会中获得指定名称的频道id,但在文档中找不到任何允许我这样做的内容。看看更发达的机器人,比如,他们可以选择连接到您的服务器,并为您的任何文本频道设置欢迎页面。我试过这样的方法:
channels = discord.utils.get(client.get_all_channels(), guild__name='Test Server'
但是这只返回“文本频道”而不返回任何其他内容。如果您使用的是discord.ext.commands您可以执行这样的循环
@b
我希望我的机器人每天在特定时间运行另一个机器人的命令发送消息。
例如,我希望我的机器人每天凌晨2点在特定频道上写入“s!t”,并删除机器人发送的消息。
我该怎么办?这方面已经有一个stackoverflow问题了。请参阅答案这方面已经有一个stackoverflow问题。参考答案您可以使用APScheduler和Cron来安排在特定时间发送邮件,如上午12:00
文件:
以下是一个例子:
#异步调度程序,因此它不会阻止其他事件
从apscheduler.schedulers.asyncio导入A
我编写了一个discord bot,允许用户输入命令,$order,然后使用aiohttp库在网站上提交订单~30分钟后,一条短信被发送到一个Twilio号码,其关键词是“到达”。然后我想提及/发送消息给输入命令的用户
到目前为止,我成功轮询“到达”消息的唯一方法是在$order命令中定义@tasks.loop()修饰函数。但我一直无法停止任务循环。我在想阻止它的最好方法是投票,直到我的订单列表为空,然后停止。这就是我目前试图在下面的代码片段中实现的
或者,我想使用分配给Twilio资源的Web
冷却使机器人在有冷却时以秒为单位显示冷却计时器。我想让机器人以分:秒的时间显示它。但我不知道怎么做
此代码的冷却时间为5分钟
@rob.error
异步def rob_错误(自身、ctx、错误):
如果isinstance(错误,commands.BadArgument):
等待ctx.send(“成员不存在”)
如果isinstance(错误,commands.CommandOnColdDown):
嵌入=不和谐。嵌入(
title=“你的电脑正在冷却!”,color=discord.colo
我正在尝试发出一个静音命令,该命令会使前面提到的用户静音(显然),如果没有找到静音角色,则会创建静音角色。由于某些原因,“添加角色”部分没有添加角色,并且没有返回错误。
代码如下:
@client.command()
@commands.has_permissions(manage_roles = True)
async def mute(ctx):
guild = ctx.guild
member = discord.Member
mute_role = discord
我想更改前缀命令。这是原始代码,但在你看之前,我已经到处找了,仍然找不到所有的东西
def get_prefix(bot, message):
with open("prefixes.json", "r") as f:
prefixes = json.load(f)
return prefixes[str(message.guild.id)]
bot = commands.Bot(command_prefix
我试图让我的机器人忽略特定用户使用任何命令
这是我当前的代码
blacklist = {userid}
@bot.command()
async def command(ctx):
if ctx.author.id in blacklist:
return
await ctx.send('You are blacklisted')
你错了,因为黑名单必须是一个列表:
blacklist = [123, 456, 789]
然后当您编码时。如图所示
我在discord.py中遇到了问题,因为当我问一个问题并检查答案是否有效时,它会扫描缺少的消息,并立即发送我编码的错误消息,这应该只在他们发送无效响应时才会发生
if message.content.startswith('!examplecommand'):
await message.channel.send("Example Question?")
if message.content in Yes or if message.content in
我对函数有问题:
为了避免在我决定创建这个函数时为每个字符串重写相同的100个字符串,该函数将返回嵌入,但不幸的是,它没有返回相同的字符串。
我没有错误,所以我不明白问题出在哪里
代码功能:
def rob_true():
ratm=随机。随机范围(50500)
经济系统[id\U其他][“钱包”]-=ratm
如果经济型系统[id\U其他][“钱包”]
它使用GoogleAPI在日历上获取即将到来的事件,但我必须限制它获取的事件数量,因为消息太长了。日历列表存储在嵌入的描述中。有没有办法将嵌入限制在一定的大小,并能够在描述中向下滚动以显示所有事件?没有,不能在嵌入中添加滚动元素。正如Zimano所说,嵌入中不能有滚动元素,但可以做的是多页嵌入,最简单的方法是使用ext.menus(要安装它:python-mpipinstall-ugit)+https://github.com/Rapptz/discord-ext-menus)
导入不一致
从d
Discord.py,如何设置命令,不带前缀,仅使用bot回复的特定单词,以及bot回复该命令,而Dm使用bot
记住错误,例如,bot对象在消息上没有属性,等等,错误。如果在cog中使用此属性
@commands.Cog.listener()
async def on_message(self,message):
await message.send("Hello!")
或者主要是
@bot.event
async def on_message(message):
await
所以我试图发出一个警告命令,但似乎没有任何效果。我已经试了几个月了,我已经做了我能想到的一切
首先我使用了JSON,但代码无法执行。
第二,我试着制作某种警报系统,但这并不可靠。
第三,我尝试使用字典,但我不知道如何添加变量
这是我目前的代码
async def warn(ctx,成员:discord.member):
def warn(警告,用户):
警告[用户]=警告[用户]+1
返回警告
警告={}
警告=警告(警告,成员)
等待ctx发送(f“警告”)
任何帮助都将不胜感激。提前谢谢
有没有办法禁止一个人使用机器人的命令。基本上是给那个特定的人一个机器人禁令
Discord.py发出一个ban命令,然后在运行ban命令而不是禁止某人时,您会给他们一个被禁止的角色,因此每当运行命令时,您都可以检查某人是否具有该角色,如果他们执行该命令,则该命令不起作用您只需以您喜欢的任何方式存储被禁止用户的ID即可(列表、json、txt文件或任何数据库),然后当用户使用命令时,bot将检查用户的id是否已存储
您还可以发出一个命令,将用户ID添加到列表中,但请记住,新ID不会永远存储,换句话
我正在尝试制作一个机器人来模拟基于回合的战斗,但我不知道在我发出命令后如何让机器人做出响应。我现在尝试的是:
async def battle(ctx):
keyword = (1,2,3)
enemy1 = ('Skeleton', 'Goblin', 'Bandit',)
enemy2 = ('Knight', 'Barbarian', 'Archer')
enemy3 = ('Elf Mage', 'Dwarf Warrior', 'Orc Brute')
这可能就是问题所在
subscriberCount=(wait response.json())[“items[0].statistics.subscriberCount”]
试试这个:
subscriberCount=(wait response.json()).items[0]。statistics.subscriberCount
有效谢谢!
@bot.command(aliases=["subscribers"])
async def subs(ctx):
asy
我想检查角色是否“由集成自动管理。它不能手动分配给成员或删除”。提前感谢。获取角色对象并检查其属性
示例my_role.managed,如果它被管理,它将是boolakaTrue
您可以使用where bot作为您的bot/客户端实例来获取角色对象
您好,我正在为我的服务器创建一个非常有用的命令来实现自动化,我希望在经过一定时间后(我使用asyncio),bot会发送一条消息,自动统计反应。
为了进行测试,我尝试了这段代码(我想使用自定义表情符号)
@client.command()
异步def pns(ctx,*,建议):
等待ctx发送(提议)
等待异步睡眠(10)
emojis=emojis=[get_emoji(ctx.guild,“Favorevole”)、get_emoji(ctx.guild,“Astenuto”)、get_e
我每次都要做#status[user id],有没有办法让它成为#status only?在命令中获取成员对象的最简单方法之一,允许您使用用户的id、名称等,就是使用它们提供的转换器
@client.command()
异步def测试(当前,成员:discord.member=None):
如果成员==无:#如果未提供成员。。
member=current.author#…使成员成为作者
等待当前。发送(f“Hello{member.notice}!”)
其他类似的问题:
您现在已经是
我想让我的机器人发送询问主通道id是什么样的机器人通道,等等。我如何让我的机器人意识到用户发送的消息是通道id,如何
我的python代码:
导入不一致
从discord.ext导入命令
@client.command()
异步def通道集(ctx):
embed=discord.embed(title='Channel-Set',description='放入频道ID')
等待ctx.send(嵌入=嵌入)
#用实际令牌替换令牌
client.run(令牌)
您可以在命令中使用该函数。下面是一
所以,我一直试图让我的机器人响应一个特定的关键字,但是当我这样做的时候,机器人要么不响应,要么给我一堆错误。我试过几种方法,但运气不好。如果有人能做到这一点,我会很高兴这里是我尝试使用的方法之一
if message.content == "keyword":
await client.send_message(message.channel, "Response {0.author.mention}")
您可以通过以下两种方式之一执行此操作:使用commands扩展名,或在o
我正在创建一个新的bot(我已经是第三次了,但已经有一段时间了),我正在创建一个简单的ban命令。它与我的其他命令一样,只是添加了@commands.has_permissions()decorator和一个用于显示禁令的嵌入命令。但是,在添加了一些打印以显示它到达的位置后,它并没有通过wait user.ban()
#--BAN---
@client.command(name=“ban”,pass\u ctx=True)
@commands.has_权限(ban_members=True)
异
我已经试过3次了,我的计划是删除用户的所有角色,在ctx.send()中写入角色,用频道中的旧角色发送一条消息,然后发送一条消息,说明用户被监禁及其原因,并给出囚犯角色
“BabaYaga”是adm的角色;'D 001'是囚犯角色
代码01:
制动器3
@client.command()
@commands.有任何角色('BABAYAGA')
异步def det(ctx,成员:discord.member=None,role=discord.Guild.roles,*,reason=None):
我目前正在编程一个bot,我的第一个目标是让bot受到欢迎,并与加入或离开的成员说再见,但是bot没有发送任何信息,甚至没有显示任何错误
@客户端事件
_成员_joinmember上的异步定义:
打印系统:成员已加入服务器!
def sprintstr:
对于str+'\n'中的c:
sys.stdout.writec
sys.stdout.flush
时间到了,睡3/90
sprint机器人:哦,嘿,看起来像+成员。name+已经加入。。
将消息发送到特定频道
channel=client.g
这是简化的代码
import time
import discord
x=0
while True:
x=x+1
time.sleep(100)
#here I want to send 'x' to my discord channel
假设我的机器人已经配置好并连接好,我只需要一个无条件发送消息的功能。要做到这一点,你必须等到机器人准备好。因此,您可以在on_ready事件中创建此while循环。然后,您必须获取将发送消息的discord.Channel对象
x=0
@
我有个问题。似乎我不知道如何重置命令冷却时间,而不是在实际的命令本身
@bot.command()
@commands.cooldown(1900,type=commands.BucketType.member)
异步def rob(ctx,左:discord.Member):
guild=ctx.author.guild
server\u members=guild.members
如果留在服务器_成员中:
打印('找到用户')
random\u chance=random.randint(0
上一页 1 2 ...
9 10 11 12 13 14 ...
下一页 共 14 页