This tool provides a method for retrieving figures from NCBI's PMC publications using the Entrez API.
This code is maintained for educational and historical reference purposes only. The tool was originally developed for academic research. Please note that the use of this tool for retrieving figures from PMC publications is subject to NCBI's policies. Use at own risk.
- Node.js >= 20
- RAM >= 4GB
- Internet connection with greater than 7mb/s download speed
If you would like to run or modify the publication figure retrieval tool locally, clone the repository with git by running the following command:
git clone https://github.com/AlexJSully/Publication-Figure-Retrieval.git
Then run
npm install
To start and run the publication figure retrieval tool, run the following command:
npm run start
If you chose to cancel this process at any time, you can resume and continue where you left off by running the same command. It will store the already processed PMC IDs in build/output/cache/id.json
. To reset the cache, delete the id.json
file.
The images are downloaded locally within the build/output
directory. They are organized by species then by publication ID.
If you have an API key, create a .env
file in the root directory and add your API key as follows:
NCBI_API_KEY=your_api_key_here
With an API key, the tool can retrieve up to 10 calls per second instead of 3. Details on obtaining an API key can be found here.
We aim to make this tool as perfect as possible but unfortunately, there may be some unforeseen bugs. If you manage to find one that is not here, feel free to create a bug report so we can fix it.
- None at the moment... Help us find some!
Please read CONTRIBUTING.md for more details.
Before contributing, ensure that all tests pass by running:
npm run validate
This project is currently in maintenance mode. This means that:
- Only critical bug fixes and security updates will be addressed.
- New feature requests are unlikely to be implemented.
If you want to support my work, you can do so through the following methods: