2026-09-10 23:41:19 +02:00

pronote-sync

Synchronisation Pronote → CalDAV + XMPP.


Synchronise l'agenda et les devoirs de Pronote vers un calendrier CalDAV et envoie un résumé quotidien par XMPP. Supporte les sources iCal et pronotepy avec repli automatique. Synthèse IA optionnelle.


🚀 Démarrage rapide

# Cloner le dépôt
git clone https://git.antoineve.me/AntoineVe/college-infos
cd college-infos

# Créer l'environnement virtuel
python3.13 -m venv .venv
source .venv/bin/activate

# Installer
pip install -e ".[dev]"

# Configurer
cp .env.example .env
# Éditer .env avec vos paramètres (voir .env.example pour le détail)

# Tester
pronote-sync --dry-run --log-level DEBUG

📖 Utilisation

pronote-sync                    # Exécute la synchronisation
pronote-sync --dry-run          # Simulation : lectures autorisées, aucune écriture persistante ni sortie distante
pronote-sync --log-level DEBUG  # Verbosité des journaux

En --dry-run, les données peuvent être lues pour construire la simulation, mais aucun état local de source n'est enregistré : l'état RSS reste en mémoire pendant l'exécution. Les écritures CalDAV et l'envoi XMPP sont également désactivés. Le mode PRONOTE_AUTH_MODE=qr_token est refusé avant toute connexion, car la rotation de son token ne peut pas garantir un état persistant cohérent pendant une simulation.


Validation et CI

Aucun workflow Gitea Actions n'est livré actuellement. Les validations du projet sont donc exécutées localement avec les commandes suivantes :

pytest
ruff check .
mypy .
bandit -r pronote_sync/

pre-commit run --all-files regroupe également les contrôles de formatage, typage, sécurité et détection de secrets.


🛠️ Déploiement

Les artefacts pour systemd/timer et logrotate sont fournis dans deploy/. Voir docs/exploitation.md pour plus de détails.


🙏 Remerciements

Ce projet repose sur les bibliothèques open-source suivantes :

Inspiré de pronote-digest par Yoan Bernabeu.


Licence

MIT — voir LICENSE.

S
Description
Outil python pour récupérer les informations transmises par le collège via Pronote et leur site internet.
Readme MIT
5.2 MiB
2026-09-10 14:02:53 +02:00
Languages
Python 100%