Gouzi Mohaled
Ajoute des fichiers et sous-dossiers supplémentaires
fe4792e
raw
history blame
1.13 kB
import requests
import logging # gardez l'import de logging même si nous n'utilisons plus directement ses fonctions de log, car nous avons toujours besoin de ses constantes de niveau (level=logging.INFO/ERROR/WARNING)
from utils.logging_utils import log_to_file # système de logging défini sur un fichier séparé pour une meilleure lisibilité.
def get_user_ip():
"""Récupère l'adresse IP publique de l'utilisateur.
Cette fonction utilise la bibliothèque requests pour récupérer l'adresse IP publique de l'utilisateur.
Si une erreur est rencontrée lors de la récupération de l'adresse IP, la fonction renvoie None.
"""
try:
response = requests.get('https://api.ipify.org?format=json')
response.raise_for_status() # Lever une exception si la requête a échoué
return response.json()['ip']
except requests.exceptions.RequestException as e:
# Gérer les erreurs de requête (connexion, timeout, etc.)
log_to_file(f"-(ip_utils.py/def get_user_ip():)Erreur lors de la récupération de l'adresse IP : {e}", level=logging.ERROR)
return None