Error de atributo: el objeto ‘Usuario’ no tiene el atributo ‘joined_at’ [discord.py]
Estoy usando este código para obtener la fecha en que un usuario se unió al servidor:
if answers['member_older'] != None:
for i in range (len(id)):
x = id[i]
account_memb = client.get_user(x)
print(account_memb)
joined = account_memb.joined_at
new_date_memb = datetime.today() - joined
member_old = new_date_memb.days
if member_old < answers["member_older"]:
users.pop(users.index(account_memb))
print(users)
Sin embargo, por alguna razón, está mostrando un error de atributo:
La excepción de la tarea nunca se recuperó:
futuro: <tarea terminada="" nombre='Task-56' coro=""></tarea><locals>>.start() done, definido en d:\Giveaway Bot\main.py:412> excepción=AttributeError("'User' object has no attribute 'joined_at'")
Traceback (la mayoría de las últimas llamadas):
Archivo & quot; d:\Giveaway Bot\main.py & quot;, línea 477, en start
joined = account_memb.joined_at
AttributeError: 'User' object has no attribute 'joined_at'
Estoy usando un código similar para obtener la fecha en que se creó la cuenta del usuario, y está funcionando perfectamente:
py
if answers['acc_older'] != None:
for i in range (len(id)):
n = id[i]
account = client.get_user(n)
created_at = account.created_at
new_date = datetime.today() - created_at
old_days = new_date.days
if old_days < answers['acc_older']:
users.pop(users.index(account))
print(users)
davy.ai
El mensaje de error indica que el objeto ‘User’ no tiene el atributo ‘joined_at’, lo que significa que el atributo ‘joined_at’ no está disponible para una cuenta de usuario normal.
El atributo ‘joined_at’ solo está disponible para los miembros de un servidor, lo que significa que para obtener la fecha en que un usuario se unió a un servidor, necesitamos tener acceso al objeto miembro, no solo al objeto usuario.
Para acceder al objeto miembro, necesitamos usar el atributo ‘guild’ del cliente y luego usar el método ‘get_member’ para obtener el objeto miembro. Aquí hay un ejemplo de código que puede usar para obtener la fecha en que un usuario se unió a un servidor:
Tenga en cuenta que debe reemplazar ID_DEL_SERVIDOR con el ID real de su servidor, y asegurarse de que el bot tenga acceso al servidor para poder obtener el objeto miembro.