Skip to main content

school-photo-dl

Téléchargeurs de photos en ligne de commande pour deux plateformes scolaires françaises :

Pilote Chrome via Selenium, s'authentifie avec vos identifiants, parcourt les albums/classes et enregistre les images HD localement, organisées par album/classe et date.

Installation

pip install school-photo-dl

Python 3.10 ou supérieur. Chrome doit être installé sur la machine. Le pilote ChromeDriver est récupéré automatiquement par webdriver-manager.

Configuration

Les identifiants et le dossier de téléchargement sont lus depuis les variables d'environnement (chargées depuis un fichier .env du dossier courant si présent). Voir .env.example.

Partagé

DOWNLOAD_DIR="/chemin/vers/dossier"
HEADLESS="true"   # "false" pour voir le navigateur

toutemonannee.com

TMA_USERNAME="email@example.com"
TMA_PASSWORD="motdepasse"

fr.klass.ly

KLASSLY_USERNAME="+33600000000"
KLASSLY_PASSWORD="motdepasse"

Utilisation

Une seule commande, deux sous-commandes :

school-photo-dl tma        # télécharge depuis toutemonannee.com
school-photo-dl klassly    # télécharge depuis fr.klass.ly
school-photo-dl --version

Sans sous-commande, la CLI lit .env et lance en séquence toutes les plateformes pour lesquelles les identifiants sont renseignés :

school-photo-dl            # auto : TMA puis Klassly si les deux sont configurés

Arborescence de sortie

  • TMA : {DOWNLOAD_DIR}/{nom_espace}/{date} - {titre}/*.jpg
  • Klassly : {DOWNLOAD_DIR}/{nom_classe}/{YYYY-MM-DD} - {texte_post}/*.jpg

Développement

git clone https://github.com/werdeil/school-photo-dl
cd school-photo-dl
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest

Publication sur PyPI : pousser un tag vX.Y.Z déclenche .github/workflows/publish.yml (Trusted Publisher PyPI, aucun token à gérer).

git tag v0.1.0 && git push --tags

Pour un build local (test du paquet avant tag) :

python -m build
twine check dist/*

Licence

GPL-3.0-or-later. Voir LICENSE.

Soutenez les plateformes

toutemonannee.com et Klassly sont des services qui facilitent le lien entre les familles et l'école au quotidien. Leur fonctionnement repose sur des équipes qui développent et maintiennent ces outils.

Si vous appréciez le service rendu, pensez à souscrire aux offres payantes proposées par ces plateformes (albums photo imprimés, abonnements premium, etc.). C'est le meilleur moyen de les soutenir et de garantir leur pérennité.

Cet outil n'a pas vocation à se substituer à ces offres mais simplement à vous permettre de conserver une copie locale de vos photos.

Avertissement

Cet outil est destiné à récupérer vos propres photos auxquelles vous avez légalement accès via votre compte. L'utilisateur est responsable du respect des conditions d'utilisation des plateformes concernées et des droits à l'image.

Metadata

Release files for school-photo-dl 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for school-photo-dl 0.1.1
File Size Uploaded Provenance Actions
school_photo_dl-0.1.1.tar.gz 40.0 kB With provenance Details for school_photo_dl-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for school-photo-dl 0.1.1
File Interpreter ABI Platform Actions
school_photo_dl-0.1.1-py3-none-any.whl Python 3 none any Details for school_photo_dl-0.1.1-py3-none-any.whl

Total release size: 74.4 kB

Release files / school_photo_dl-0.1.1.tar.gz

Download URL school_photo_dl-0.1.1.tar.gz
Size 40.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a7fbc2c7f2b5a5ecdf372fb53caf9ff8559bdb6f17dd21bef715ccf8392d22a8
BLAKE2b-256 checksum
How to use checksums
3128ade6908c3d6fdb878f29b1d82632d1d21db651df4ecd839ed9e04e3960c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 31, 2026.

Transparency log

Release files / school_photo_dl-0.1.1-py3-none-any.whl

Download URL school_photo_dl-0.1.1-py3-none-any.whl
Size 34.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
80b17d36169fc40a738ccf01eff7993d058b565ee0794b503d62e32918d7db24
BLAKE2b-256 checksum
How to use checksums
c2bc609a29e7380c51a8a6257b6a6a9500f6adeaf0b4d095fecbe357e671c2fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 31, 2026.

Transparency log

Security for school-photo-dl 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for school_photo_dl-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 31, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page