Une bibliothèque Node JS pour rechercher dans les catalogues des bibliothèques publiques du Royaume-Uni. Ceci a été conçu pour être utilisé dans d'autres projets nécessitant de rechercher dans plusieurs catalogues de bibliothèques.
Au Royaume-Uni, il existe environ 200 services de bibliothèques publiques, chacun doté de son propre système de gestion de bibliothèque et d'un catalogue d'accès public en ligne (OPAC) associé, à l'exception de certains qui partagent des systèmes.
Malgré leur nombre, il existe relativement peu de types de systèmes de bibliothèques et moins de fournisseurs. Ce projet vise à définir les interactions avec chaque type de catalogue web afin d'automatiser les processus courants. Comme chercher un livre.
Cela offrira des opportunités d'agrégation de données, telles que la possibilité d'interroger l'ensemble du Royaume-Uni pour connaître la disponibilité d'un livre particulier. Il pourrait également fournir des fonctionnalités permettant de gérer le compte d'un utilisateur sur tous ses comptes de bibliothèque, comme l'automatisation du renouvellement des livres.
Une liste des autorités britanniques en matière de bibliothèques publiques est incluse dans le fichier data.json . Celui-ci contient le nom de l'autorité de la bibliothèque et le type de service de bibliothèque, ainsi que les données spécifiques requises pour rechercher ce service, par exemple l'URL Web.
Il comprend le code GSS de chaque autorité. Cela lui permet d'être combiné avec d'autres ensembles de données qui peuvent être publiés ailleurs.
Par exemple:
Nom | Code | Taper | URL |
---|---|---|---|
Ville d'Aberdeen | S12000033 | espion | https://aberdeencity.spydus.co.uk/ |
Le projet utilise Node Package Manager (NPM) pour la gestion des packages. Lors du téléchargement d'une copie du projet, les dépendances requises doivent être installées. En supposant que Node soit déjà installé, pour construire :
npm install
Exécutez-les en utilisant Jest. Pour chaque service de bibliothèque, cinq ISBN sont définis dans tests.json
. Les tests ne nécessitent qu'une seule recherche ISBN pour réussir (puisque les livres peuvent cesser de circuler et nous ne voulons pas que les tests automatisés échouent fréquemment pour des raisons non fonctionnelles).
Le projet met en œuvre les méthodes suivantes
Méthode | Description |
---|---|
Services | Renvoie les données stockées sur les services de bibliothèque (autorités). |
Bibliothèques | Renvoie les informations sur la succursale/emplacement, extraites du catalogue en ligne. |
Disponibilité | Renvoie la disponibilité d’un livre particulier. |
Renvoie le contenu sélectionné du fichier data.json pour chaque service. Cela peut être utile si un développeur souhaite créer une interface répertoriant les autorités de la bibliothèque dans un filtre.
Méthode | Description |
---|---|
.services(serviceFilter) | Renvoie une liste des autorités de bibliothèque. Le filtre de service filtre par nom ou par code et est facultatif. |
Renvoie une liste des points de service de bibliothèque dans chaque service de bibliothèque. Cela peut inclure des bibliothèques mobiles et différents emplacements au sein de bâtiments individuels.
Méthode | Description |
---|---|
.bibliothèques (serviceFilter) | Renvoie une liste de bibliothèques pour chaque service. Le filtre de service filtre par nom ou par code et est facultatif. |
Renvoie des données indiquant le nombre d'exemplaires disponibles/indisponibles du titre concerné dans chaque point de service de bibliothèque, pour chaque service de bibliothèque.
Méthode | Description |
---|---|
.disponibilité (isbn, serviceFilter) | Récupère la disponibilité d'un titre particulier en passant l'ISBN. Le filtre de service filtre par nom ou par code et est facultatif. |
Code original sous licence MIT.