Générer ses comptes kwartz depuis SIECLE et Pronote

Plusieurs fois par an, il faut générer les fichiers d’importation pour kwartz. Sconet/kwartz permet déjà cela, mais il ne n’associe pas automatiquement les profs à leurs classes. J’ai donc développé un petit outil en python qui utilise les données de Pronote pour créer ces affectations (de manière optionnelle).

Récupération des données

Exportation de SIECLE

(Pour obtenir la liste des élèves et leurs affectations.)

Avec le compte d’un personnel administratif, se connecter sur SIECLE puis faire une exportation xml de la Base Élève Établissement (BEE). Le fichier obtenu étant zippé, il faut de décompresser avant utilisation.

Exportation Kwartz

(Pour obtenir l’état actuel des comptes.)

À partir de la version 5, dans l’onglet Utilisateurs > Gestion des comptes > Exporter > Exporter le fichier
Le fichier arrive sur le compte winadmin de kwartz (\\kwartz\winadmin\Listes utilisateurs).

Exportation Pronote

(Facultatif – Pour obtenir la liste des profs et leurs affectations.)

Se connecter en administrateur à Pronote puis :
Fichier > Autres imports/exports > Exporter un fichier texte
Dans la liste déroulante « Type de données à exporter », choisir Services, puis cliquer sur Exporter.

La moulinette

Avec nos fichiers, il ne reste plus qu’à lancer le script en précisant le nom du groupe dans lequel se trouve les profs sur kwartz :

python3 crea_kwartz.py profs ElevesSansAdresses.xml Exportation_kwartz.txt [EXP_SERVICES_pronote.txt]

Quatre fichiers sont générés :
* Aajouter.txt pour les comptes à ajouter ;
* Amodifier.txt pour les comptes à modifier ;
* Asupprimer.txt pour les comptes à désactiver (à affecter au groupe « anciens »), ou à supprimer ;
* Messages.txt contenant tous les messages d’avertissement provoqués par la génération des trois fichiers précédant.

Reste plus qu’à retourner sur kwartz ( Utilisateurs > Importer ) pour mettre à jour les comptes.

J’essaierais d’ajouter une interface web à l’occasion pour rendre plus pratique l’exécution du script :)

Publicités