@Mathis EON Mathis EON authored on 21 Jun 2024
data/ records wip 1 year ago
excel wip 1 year ago
lodex Feat: template 1 year ago
schema wip 1 year ago
script wip 1 year ago
.env.dist Feat: publication des données sur Lodex 1 year ago
.gitignore Featt: Lodex import 1 year ago
Makefile wip 1 year ago
README.md Fix: documenting harvest 1 year ago
lodex.mk Featt: Lodex import 1 year ago
README.md

istex-enrich-monitoring

Ce dépôt contient le code qui permet de produire et publier les statistiques d'enrichissement d'Istex.

Organisation du dépôt

.
├── data                Contient les enregistrements statistiques bruts récupérées par le harvester
│   └── records
├── excel               Contient les données destinées à être chargées par Excel
│   └── data.json
├── lodex               Contient les données destinées à être chargées dans Lodex (modèle et données)
│   └── data.jsonl
├── lodex.mk            Contient toutes les commandes relatives à Lodex
├── Makefile
├── README.md
├── schema              Contient le schéma qui permet de valider les données de /data
│   └── schema.json
└── script
    ├── harvester       Contient le script de récupération des données statistiques depuis l'API Istex
    └── lodex-export    Contient le script de conversion des données brutes (./data/records) dans un format adapté à Lodex

Pré requis

L'utilisation des scripts requiert les dépendances suivantes :

  • Python 3
  • make
  • jq
  • curl
  • zip

L'installation des dépendances de python doit être réalisée par le Makefile. Les dépendances python sont installées dans un environnement venv qui est utilisé par certaines commandes du Makefile.

make setup

Usage

Ce projet utilise make pour automatiser les tâches. Les commandes suivantes sont disponibles :

  • make harvest: Récupère les données depuis l'API Istex. Les données sont stockées dans ./data/records/

  • make setup : Crée un environnement Python virtuel et installe les dépendances nécessaires.

  • make fetch-api-istex : Récupère les données statistiques depuis l'API Istex.

  • make fetch-loaded-corpus : Récupère les données de l'instance loaded-corpus et crée un mapping identifiant corpus => ARK, stocké dans /tmp/loaded-corpus-mapping.json.

  • make lodex-clean-json-keys : Remplace les points (.) dans les clés JSON par des tirets (-) pour rendre les clés compatibles avec Lodex.

  • make mapping-corpus-ark : Crée un dictionnaire {"identifiant corpus": "ARK"} à partir des données récupérées.

  • make merge-loaded-corpus-data : Fusionne les données loaded corpus avec les données existantes.

  • make export-all : Exporte toutes les données pour Excel et Lodex.

  • make export-excel : Fusionne tous les fichiers JSONL en un seul fichier JSON compatible avec Excel, sauvegardé sous ./excel/data.json.

  • make export-lodex : Compile et aligne les données par corpus avec les données loaded corpus pour Lodex, sauvegardé sous ./lodex/data.jsonl.

  • make publish-lodex : Publie les données sur Lodex. Avant d'utiliser make publish-lodex, configurez les variables d'environnement requises dans un fichier .env à la racine du projet. Le fichier .env.dist peut servir de modèle