scrapping agendadulibre
This commit is contained in:
parent
6deed13d0b
commit
74738772b4
18 changed files with 63557 additions and 11 deletions
98
extractors/setup_cron.sh
Executable file
98
extractors/setup_cron.sh
Executable file
|
@ -0,0 +1,98 @@
|
|||
#!/bin/bash
|
||||
# Script de configuration du cron pour le scraper agenda du libre
|
||||
|
||||
SCRIPT_DIR="/home/poule/encrypted/stockage-syncable/www/development/html/oedb-backend/extractors"
|
||||
SCRIPT_PATH="$SCRIPT_DIR/agendadulibre.py"
|
||||
LOG_FILE="$SCRIPT_DIR/cron_agendadulibre.log"
|
||||
|
||||
echo "🔧 Configuration du cron pour le scraper agenda du libre"
|
||||
echo "========================================================"
|
||||
|
||||
# Vérifier que le script existe
|
||||
if [ ! -f "$SCRIPT_PATH" ]; then
|
||||
echo "❌ Erreur: Le script $SCRIPT_PATH n'existe pas"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Rendre le script exécutable
|
||||
chmod +x "$SCRIPT_PATH"
|
||||
|
||||
echo "📋 Options de planification disponibles:"
|
||||
echo "1. Toutes les heures (batch de 1)"
|
||||
echo "2. Toutes les 2 heures (batch de 5)"
|
||||
echo "3. Tous les jours à 6h (batch de 10)"
|
||||
echo "4. Tous les jours à 6h et 18h (batch de 5)"
|
||||
echo "5. Personnalisé"
|
||||
echo ""
|
||||
|
||||
read -p "Choisissez une option (1-5): " choice
|
||||
|
||||
case $choice in
|
||||
1)
|
||||
CRON_SCHEDULE="0 * * * *"
|
||||
BATCH_SIZE="1"
|
||||
;;
|
||||
2)
|
||||
CRON_SCHEDULE="0 */2 * * *"
|
||||
BATCH_SIZE="5"
|
||||
;;
|
||||
3)
|
||||
CRON_SCHEDULE="0 6 * * *"
|
||||
BATCH_SIZE="10"
|
||||
;;
|
||||
4)
|
||||
CRON_SCHEDULE="0 6,18 * * *"
|
||||
BATCH_SIZE="5"
|
||||
;;
|
||||
5)
|
||||
read -p "Entrez la planification cron (ex: 0 */3 * * *): " CRON_SCHEDULE
|
||||
read -p "Entrez la taille des batches (ex: 5): " BATCH_SIZE
|
||||
;;
|
||||
*)
|
||||
echo "❌ Option invalide"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Demander l'URL de l'API
|
||||
read -p "Entrez l'URL de l'API OEDB (défaut: http://localhost:5000): " API_URL
|
||||
API_URL=${API_URL:-"http://localhost:5000"}
|
||||
|
||||
# Créer la commande cron
|
||||
CRON_COMMAND="$CRON_SCHEDULE cd $SCRIPT_DIR && python3 $SCRIPT_PATH --api-url $API_URL --batch-size $BATCH_SIZE >> $LOG_FILE 2>&1"
|
||||
|
||||
echo ""
|
||||
echo "📝 Configuration cron proposée:"
|
||||
echo "Planification: $CRON_SCHEDULE"
|
||||
echo "Commande: $CRON_COMMAND"
|
||||
echo ""
|
||||
|
||||
read -p "Voulez-vous ajouter cette tâche au cron ? (y/N): " confirm
|
||||
|
||||
if [[ $confirm =~ ^[Yy]$ ]]; then
|
||||
# Ajouter la tâche au cron
|
||||
(crontab -l 2>/dev/null; echo "$CRON_COMMAND") | crontab -
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "✅ Tâche cron ajoutée avec succès"
|
||||
echo ""
|
||||
echo "📋 Tâches cron actuelles:"
|
||||
crontab -l | grep agendadulibre || echo "Aucune tâche trouvée"
|
||||
echo ""
|
||||
echo "📁 Logs disponibles dans: $LOG_FILE"
|
||||
echo "🔍 Pour surveiller les logs: tail -f $LOG_FILE"
|
||||
else
|
||||
echo "❌ Erreur lors de l'ajout de la tâche cron"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "❌ Configuration annulée"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "💡 Commandes utiles:"
|
||||
echo " - Voir les tâches cron: crontab -l"
|
||||
echo " - Supprimer une tâche: crontab -e"
|
||||
echo " - Voir les logs: tail -f $LOG_FILE"
|
||||
echo " - Tester manuellement: python3 $SCRIPT_PATH --api-url $API_URL --batch-size $BATCH_SIZE"
|
Loading…
Add table
Add a link
Reference in a new issue