Проблема с типом данных
В фильтре вы используете конструкцию:
int(g['permissions']) >> 5
Это предполагает, что g['permissions'] всегда будет преобразуемо в int. Если g['permissions'] имеет строковый формат или тип None, вызов int() может привести к исключению ValueError или TypeError.
Рекомендация: Перед выполнением битовой операции убедитесь, что данные корректны, например, добавив проверку:
import requests
import datetime
TOKEN = ""
headers = {
"Authorization": TOKEN # Без 'Bot', так как это пользовательский токен!
}
response = requests.get("https://discord.com/api/v10/users/@me", headers=headers)
if response.status_code == 200:
data = response.json()
user_id = data["id"]
print(f"ID аккаунта: {user_id}")
# Декодируем дату регистрации
def discord_id_to_date(discord_id):
timestamp = ((int(discord_id) >> 22) + 1420070400000) / 1000
return datetime.datetime.utcfromtimestamp(timestamp).strftime('%Y-%m-%d %H:%M:%S')
print(f"Дата регистрации: {discord_id_to_date(user_id)}")
else:
print("Ошибка:", response.status_code, response.text)