如何获取某人帐户的年龄?不和谐.py

2022-01-15 00:00:00 python discord.py

问题描述

为了防止新帐户使用某个命令,我如何在用户键入消息时获取用户帐户的年龄(或创建日期).

To prevent new accounts from using a certain command, how could I get the age of a users account (or creation date) when they type a message.


client.get_user(account_date)

if account_date < 14:
   print('Your account must be older than 14 days to use this command')
else:
   print('Your account can use this command')

感谢任何帮助.


解决方案

您可以使用 ctx.author 从 ctx 或使用 message.author.

You can get a User object from either ctx with ctx.author or from a message with message.author.

然后在 User 对象上你可以调用 created_at.

Then on the User object you can call created_at.

例如获取当前用户的帐号

So for example to get account of current user

@bot.command()
async def CreatedAccountAt(self,ctx):
   await ctx.send(ctx.author.created_at)

或通过 ID 获取用户创建日期

or to get a user created date by ID

@bot.command()
async def CreatedAccountAt(ctx, userId: int):
    user =  bot.get_user(userId)
    await ctx.send(user.created_at)

https://discordpy.readthedocs.io/en/latest/api.html#discord.User.created_at

相关文章