Current version: v2.0.0
Trove provides access to much of its data through APIs (Application Programming Interfaces). These include:
- the main Trove API delivers data from aggregated collections, digitised resources (including newspapers), and user activity (such as lists and tags)
- OAI-PMH and SRU APIs deliver data from the Trove People and organisations zone
- Memento and CDX APIs deliver data from the Australian Web Archive
The notebooks in this repository provide examples of using the main Trove API to harvest data and analyse the contents of Trove resources. You'll find more examples throughout the Trove sections of the GLAM Workbench. For help building your own Trove API requests, try the Trove API Console.
- Your first API request – learn how to send a request for information to the Trove API.
- Working with zones – Trove's zones are important in constructing API requests and interpreting the results. So let's explore them a bit.
- Exploring facets – Facets aggregate collection data in interesting and useful ways, allowing us to build pictures of the collection.
There are a number of different ways to use these notebooks. Binder is quickest and easiest, but it doesn't save your data. I've listed the options below from easiest to most complicated (requiring more technical knowledge).
Click on the button above to launch the notebooks in this repository using the Binder service (it might take a little while to load). This is a free service, but note that sessions will close if you stop using the notebooks, and no data will be saved. Make sure you download any changed notebooks or harvested data that you want to save.
See Using Binder for more details.
Reclaim Cloud is a paid hosting service, aimed particularly at supported digital scholarship in hte humanities. Unlike Binder, the environments you create on Reclaim Cloud will save your data – even if you switch them off! To run this repository on Reclaim Cloud for the first time:
- Create a Reclaim Cloud account and log in.
- Click on the button above to start the installation process.
- A dialogue box will ask you to set a password, this is used to limit access to your Jupyter installation.
- Sit back and wait for the installation to complete!
- Once the installation is finished click on the 'Open in Browser' button of your newly created environment (note that you might need to wait a few minutes before everything is ready).
See Using Reclaim Cloud for more details.
You can use Docker to run a pre-built computing environment on your own computer. It will set up everything you need to run the notebooks in this repository. This is free, but requires more technical knowledge – you'll have to install Docker on your computer, and be able to use the command line.
- Install Docker Desktop.
- Create a new directory for this repository and open it from the command line.
- From the command line, run the following command:
docker run -p 8888:8888 --name trove-api-intro -v "$PWD":/home/jovyan/work quay.io/glamworkbench/trove-api-intro repo2docker-entrypoint jupyter lab --ip 0.0.0.0 --NotebookApp.token='' --LabApp.default_url='/lab/tree/index.ipynb'
- It will take a while to download and configure the Docker image. Once it's ready you'll see a message saying that Jupyter Notebook is running.
- Point your web browser to
http://127.0.0.1:8888
See Using Docker for more details.
If you know your way around the command line and are comfortable installing software, you might want to set up your own computer to run these notebooks.
Assuming you have recent versions of Python and Git installed, the steps might be something like:
- Create a virtual environment, eg:
python -m venv trove-api-intro
- Open the new directory"
cd trove-api-intro
- Activate the environment
source bin/activate
- Clone the repository:
git clone https://github.com/GLAM-Workbench/trove-api-intro.git notebooks
- Open the new
notebooks
directory:cd notebooks
- Install the necessary Python packages:
pip install -r requirements.txt
- Run Jupyter:
jupyter lab
See Getting started for more details.
See the GLAM Workbench or Zenodo for up-to-date citation details.
This repository is part of the GLAM Workbench.