Scripts permettant d'extraire les données MAJIC au format NDJSON.
- Node.js >= 14
- Pour France entière : environ 20 Go d'espace disponible (5 Go pour les fichiers sources, 10 Go pour l'espace de travail, 5 Go pour les données résultantes)
yarn
Les données sources doivent être récupérées auprès des services de la DGFiP, ou de ses antennes locales.
Actuellement la production des fichiers se déroule en 2 étapes, via 2 commandes.
Les fichiers MAJIC sont fréquemment mis à disposition sous forme d’archives auto-extractibles (sous Windows).
Vous devez décompresser ces archives et placer tous les fichiers résultants dans un répertoire unique, par exemple un dossier ./data
.
Sous Mac ou sous Linux, vous pouvez utiliser les outils find
et unar
. Par exemple :
find /path/to/*.exe -exec unar -D -f -o data/ {} \;
Les fichiers résultants sont des fichiers texte à largeur fixe. Ils peuvent être en clair ou compressés via gzip
.
Tout d'abord la commande import-data
explore le dossier contenant les fichiers MAJIC par direction, et les charge dans la base SQLite majic.sqlite
, par code commune et code fichier (BATI
, NBAT
, PROP
, PDLL
, LLOT
).
Pour France entière l'opération ne prend que quelques minutes sur une machine moyenne.
yarn import-data
La variable d'environnement MAJIC_PATH
doit être renseignée de manière à pointer vers le fichier généré à l'étape précédente.
const {getCommuneData} = require('@etalab/majic')
// Données brutes
await getCommuneData('54084')
// Données simplifiées
await getCommuneData('54084', {profile: 'simple})
MIT