@Mathis EON Mathis EON authored on 25 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: lodex-cli 1 year ago
.gitignore Featt: Lodex import 1 year ago
Makefile Feat: lodex-cli 1 year ago
README.md Feat: lodex-cli 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
├── 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

Récupérer le dépôt :

git clone https://gitbucket.inist.fr/eon/istex-enrich-monitoring
cd istex-enrich-monitoring

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

  • Python 3
  • make
  • jq
  • curl
  • zip
  • lodex-cli

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

Publication d'une nouvelle version du jeu de données

Pour publier une nouvelle version les commandes suivantes doivent être saisies

make setup
make harvest
make export-all
make publish-lodex