41 lines
1.6 KiB
Python
41 lines
1.6 KiB
Python
|
#!/bin/python3
|
||
|
# Générer des statistiques sur tous les sites web
|
||
|
|
||
|
from utils import get_stats_on_all_websites
|
||
|
from website_config import configs_sites
|
||
|
|
||
|
def main():
|
||
|
"""
|
||
|
Fonction principale qui génère les statistiques pour tous les sites web configurés
|
||
|
"""
|
||
|
print("Génération des statistiques pour tous les sites web...")
|
||
|
lecture_mots_par_minute = 150
|
||
|
# Récupérer les statistiques pour tous les sites
|
||
|
stats = get_stats_on_all_websites()
|
||
|
|
||
|
# Afficher les statistiques pour chaque site
|
||
|
for site_name, site_stats in stats.items():
|
||
|
print(f"\n=== Statistiques pour {site_name} ===")
|
||
|
print(f"Nombre total d'articles: {site_stats['nb_articles']}")
|
||
|
# Formater le nombre de mots avec séparateur de milliers
|
||
|
mots_formatte = f"{site_stats['nb_mots']:,}".replace(',', ' ')
|
||
|
# Calculer le temps de lecture (150 mots/minute)
|
||
|
|
||
|
temps_lecture = site_stats['nb_mots'] / lecture_mots_par_minute
|
||
|
heures = int(temps_lecture // 60)
|
||
|
minutes = int(temps_lecture % 60)
|
||
|
|
||
|
# Si le temps de lecture dépasse 48h, convertir en jours
|
||
|
if heures >= 48:
|
||
|
jours = heures // 24
|
||
|
heures = heures % 24
|
||
|
temps_lecture_str = f"{jours}j {heures}h {minutes}min"
|
||
|
else:
|
||
|
temps_lecture_str = f"{heures}h {minutes}min" if heures > 0 else f"{minutes}min"
|
||
|
|
||
|
print(f"Nombre total de mots: {mots_formatte}")
|
||
|
print(f"Temps de lecture estimé: {temps_lecture_str} (base: {lecture_mots_par_minute} mots/min)")
|
||
|
print(f"Dernier article publié: {site_stats['dernier_article']}")
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
main()
|