BibRennes /

Filename Size Date modified Message
data
1.5 KB
4.0 KB
13.4 KB
11.1 KB
5.8 KB
296 B
4.8 KB

BibRennes

Outils d'extraction et d'indexation du catalogue d'oeuvres des bibliothèques de Rennes Métropole dans une optique d'ouverture des données.

Outils

Trois outils sont proposés:

  • Extraction du catalogue
  • Indexation du catalogue
  • Mise à jour du statut des oeuvres

Ces outils ciblent des développeurs logiciels plutôt que le commun des mortels et nous faisons l'hypothèse que vous connaissez suffisament le langage et l'environnement Python.

Pré-requis

Pour exécuter les scripts, vous aurez besoin de:

Qui plus est les scripts s'appuient sur un jeu de dépendances décrites dans le fichier requirements.txt. Voici les étapes pour obtenir un environment de base pour exécuter les scripts:

Créez un virtual environment

Récupérez le script https://raw.github.com/pypa/virtualenv/master/virtualenv.py

Puis exécutez :

$ python virtualenv.py --distribute chemin/vers/BIBENV

BIBENV sera un répertoire crée dans chemin/vers et contiendra votre environnement virtuel. Vous pouvez utilisez le nom que vous voulez à la place de BIBENV.

Activez l'environnement virtuel

$ source chemin/vers/BIBENV/bin/activate

Installez Cython

Récupérez la version la plus récente : http://cython.org/#download

Exécutez l'installation :

$ python setup.py install

Malheureusement l'installateur pip ne semble pas capable d'installer Cython proprement. Nous devons donc le faire manuellement.

Installez les dépendances

$ pip install -r requirements.txt

Préparez votre catalogue

L'extraction du catalogue se fait sur disque dans un répertoire de votre choix.

La seule contrainte est d'avoir de l'espace et un système de fichier prêt à accueillir quelques des dizaines de milliers de petits fichiers.

Nous utilisons ext4 avec succès. Quant à l'espace disque, il vous faudra au moins 3Gb de libre pour le catalogue complet.

Créez donc un répertoire catalog quelque part sur votre disque.

Récupérez le catalogue complet

Activez d'abord l'environnement virtuel :

$ source chemin/vers/BIBENV/bin/activate

Il suffit de lancer la commande suivante :

$ python bibrennes2bibjson.py --catalog-dir chemin/vers/catalog

Pour le catalogue entier et suivant les capacités de votre machine, cette opération prendra environ deux jours.

Les notices sont stockées dans le répertoire du catalogue au format BibJSON.

Indéxez le catalogue complet

Créez un répertoire pour stocker les indexes, appelez le, par exemple, catalog_indexes.

Activez d'abord l'environnement virtuel :

$ source chemin/vers/BIBENV/bin/activate

Ensuite, exécutez la commande suivante :

$ indexer.py --catalog_dir chemin/vers/catalog --index-dir chemin/vers/catalog_indexes

Cette opération prendra environ deux heures.

Mettez à jour les status des notices

Il est possible de mettre à jour le statut des notices du catalogue entier ou d'une unique notice.

Activez d'abord l'environnement virtuel :

$ source chemin/vers/BIBENV/bin/activate

Ensuite, exécutez la commande suivante pour le catalogue entier :

$ python updater.py --catalog-dir chemin/vers/catalog --all

Il s'agit d'une opération très longue.

Ou pour une seule notice dont vous connaissez l'id du record:

$ python updater.py --catalog-dir chemin/vers/catalog --record b1234579

Contacts

Vous pouvez nous contacter via http://cod-rennes.fr

Licences

Le code est livré sous licence BSD.

Les données stockées ici sont sous licence libre de Rennes Métropole.