« GallicaSPARQLBot » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 5 : | Ligne 5 : | ||
Dans un premier temps, le bot cherche, à travers des requêtes SPARQL, l'intégralité des auteurs appartenant à la base de données de la BnF. | Dans un premier temps, le bot cherche, à travers des requêtes SPARQL, l'intégralité des auteurs appartenant à la base de données de la BnF. | ||
Le fichier json de l'auteur est récupéré. Il contient les informations suivantes: | |||
* Sa date/son lieu de Naissance, | * Sa date/son lieu de Naissance, | ||
* Sa date/son lieu de Mort, | * Sa date/son lieu de Mort, | ||
* Ses œuvres principales. | * Ses œuvres principales. | ||
A partir de ces informations, le bot crée ou modifie la page Wikipast liée à chaque auteur en y ajoutant leurs dates de naissance et de mort et ajoute de la même façon les œuvres principales de l'auteur (leurs informations sont elles aussi récupérer à travers les json des œuvres). Ces ajouts sont chacun accompagnée de liens renvoyant vers le site de la BnF et sont normalisés de la façon suivante: | |||
le bot crée ou modifie la page Wikipast liée à chaque auteur en y ajoutant leurs dates de naissance et de mort et ajoute de la même façon les œuvres principales de l'auteur. Ces ajouts sont chacun accompagnée de liens renvoyant vers le site de la BnF et sont normalisés de la façon suivante: | |||
Pour la date de naissance : <pre> 1840.11.14 / Paris 9e. Naissance de Claude Monet. </pre> | Pour la date de naissance : <pre> 1840.11.14 / Paris 9e. Naissance de Claude Monet. </pre> |
Version du 14 mai 2019 à 12:04
Le GallicaSPARQLBot est un bot python complétant ou générant automatiquement des pages Wikipast à partir des données de la Bibliothèque nationale de France (BnF).
Le code pour le bot est disponible sur ce repo GitHub. Pour exécuter le bot, il suffit de lancer le fichier python execute_bot.py en passant le mot de passe du GallicaSPARQLBot en argument.
Dans un premier temps, le bot cherche, à travers des requêtes SPARQL, l'intégralité des auteurs appartenant à la base de données de la BnF.
Le fichier json de l'auteur est récupéré. Il contient les informations suivantes:
- Sa date/son lieu de Naissance,
- Sa date/son lieu de Mort,
- Ses œuvres principales.
A partir de ces informations, le bot crée ou modifie la page Wikipast liée à chaque auteur en y ajoutant leurs dates de naissance et de mort et ajoute de la même façon les œuvres principales de l'auteur (leurs informations sont elles aussi récupérer à travers les json des œuvres). Ces ajouts sont chacun accompagnée de liens renvoyant vers le site de la BnF et sont normalisés de la façon suivante:
Pour la date de naissance :
1840.11.14 / Paris 9e. Naissance de Claude Monet.
Pour la date de décès :
1926.12.06 / Giverny. Décès de Claude Monet.
Pour une œuvre :
1879. Création par Claude Monet de Camille sur son lit de mort (Monet).
Exemple d'auteur ayant des dates compliqués à gérer
Les pages Wikipast de chacune des œuvres de l'auteur sont aussi créées.
Afin d'éviter des collisions entre le nom de plusieures œuvres ainsi qu'entre le nom d'une œuvre et celui d'un auteur, il a été choisi de nommer ces pages avec le nom de l’œuvre suivi du nom de l'auteur (par exemple: .......... ).
Chacune des pages explorées par le bot seront agrémentées d'un identifiant BnF (Bnf id) et de leur type wikidata.
Performances
Le bot permet de créer en moyenne 1000 pages d'auteurs (sans compter les pages d'œuvres) en environ 7 minutes. Ceci fait fait que l'import total (environ 500'000 auteurs) ne devrait pas prendre plus de 2.5 jours. Cette vitesse a été atteinte en parallélisant le programme, permettant une diminution très importante du temps total.
Suite à la création de 7000 auteurs (ainsi que de nombreuses œuvres), les estimations pratiques se rangent plutôt dans les 7 jours.
Exemple d'utilisation
Pour un auteur:
Pour une œuvre: