所以我试图做一个反虚荣改变作为我的机器人反核武器的一部分,但它不起作用并且没有返回任何错误。这是代码:
@commands.Cog.listener()
async def on_guild_update(self, before, after):
if before.premium_tier == 3:
try:
with open('whitelisted.json') as f:
whitelisted = json.load(f)
before_vanity = await before.vanity_invite()
whitelistedUsers = str(whitelisted)
after_vanity = await after.vanity_invite()
if before_vanity != after_vanity:
async for entry in after.audit_logs(limit=1, after=datetime.datetime.now() - datetime.timedelta(seconds = 3), action=discord.AuditLogDiff.vanity_url_code):
if entry.user.id in whitelistedUsers or entry.user in whitelistedUsers:
return
if entry.target == before:
try:
await entry.user.ban(reason="Lying\n・Unauthorized user changing vanity.")
session.patch(f"https://discord.com/api/v9/guilds/{after.id}/vanity-url/{before_vanity}")
except Exception as error:
if isinstance(error, discord.Forbidden):
return
else:
return print(f"{Fore.RED}[Anti Error]: Vanity Protection ({after.name}){Fore.RESET}")
except Exception as error:
print(f"{Fore.RED}[Anti Error]: {error} | Anti-Vanity. ({after.name}){Fore.RESET}")
我还确保我在测试时没有被列入白名单,但仍然没有发生任何事情。