Uma biblioteca Node JS para pesquisar catálogos de bibliotecas públicas do Reino Unido. Ele foi projetado para ser usado em outros projetos que necessitem pesquisar vários catálogos de bibliotecas.
No Reino Unido existem cerca de 200 serviços de bibliotecas públicas, cada um com o seu próprio Sistema de Gestão de Bibliotecas e um Catálogo de Acesso Público Online (OPAC) associado - além de alguns que partilham sistemas.
Apesar de tantos, existem relativamente poucos tipos de sistemas de biblioteca e menos fornecedores. Este projeto visa definir as interações com cada tipo de catálogo web de forma a automatizar processos comuns. Como procurar um livro.
Isto proporcionará oportunidades de agregação de dados, como a possibilidade de consultar todo o Reino Unido sobre a disponibilidade de um livro específico. Ou poderia fornecer funcionalidade para gerenciar a conta de um usuário em todas as suas contas de biblioteca, como automatizar renovações de livros.
Uma lista de autoridades de bibliotecas públicas do Reino Unido está incluída no arquivo data.json . Contém o nome da autoridade da biblioteca e o tipo de serviço da biblioteca, juntamente com dados específicos necessários para pesquisar esse serviço, por exemplo, o URL da web.
Inclui o código GSS de cada autoridade. Isto permite que seja combinado com outros conjuntos de dados que possam ser publicados em outro lugar.
Por exemplo:
Nome | Código | Tipo | URL |
---|---|---|---|
Cidade de Aberdeen | S12000033 | espião | https://aberdeencity.spydus.co.uk/ |
O projeto usa Node Package Manager (NPM) para gerenciamento de pacotes. Ao baixar uma cópia do projeto, as dependências necessárias deverão ser instaladas. Supondo que o Node já esteja instalado, para compilar:
npm install
Execute-os usando Jest. Para cada serviço de biblioteca, cinco ISBNs são definidos em tests.json
. Os testes requerem apenas uma pesquisa de ISBN para serem bem sucedidos (uma vez que os livros podem sair de circulação e não queremos que os testes automatizados falhem frequentemente por razões não funcionais).
O projeto implementa os seguintes métodos
Método | Descrição |
---|---|
Serviços | Retorna dados armazenados sobre serviços de biblioteca (autoridades). |
Bibliotecas | Retorna informações de agência/local, retiradas do catálogo online. |
Disponibilidade | Retorna a disponibilidade de um livro específico. |
Retorna o conteúdo selecionado do arquivo data.json para cada serviço. Isto pode ser útil se um desenvolvedor desejar criar uma interface que liste as autoridades da biblioteca em um filtro.
Método | Descrição |
---|---|
.services(serviceFiltro) | Retorna uma lista de autoridades da biblioteca. O filtro de serviço filtra por nome ou código e é opcional. |
Retorna uma lista dos pontos de serviço da biblioteca em cada serviço da biblioteca. Isto pode incluir bibliotecas móveis e diferentes locais dentro de edifícios individuais.
Método | Descrição |
---|---|
.bibliotecas(serviceFilter) | Retorna uma lista de bibliotecas para cada serviço. O filtro de serviço filtra por nome ou código e é opcional. |
Retorna dados que mostram o número de exemplares disponíveis/indisponíveis do título relevante em cada ponto de atendimento bibliotecário, para cada serviço bibliotecário.
Método | Descrição |
---|---|
.disponibilidade(isbn, serviceFilter) | Recupera a disponibilidade de um determinado título passando o ISBN. O filtro de serviço filtra por nome ou código e é opcional. |
Código original licenciado com licença MIT.