a SafariBooksOnline downloader that generates respective .epub books for offline and kindle reading
SafariBooks-Downloader is a project created and maintained by Nico Haenggi.
The project is currently setup in two branches. -
masteralso known as
stable- The ePub generator 'should' be stable on this branch, and is generally well tested -
devalso known as
unstable- The ePub generator is being developed on this branch, and is not always well tested and stable
If you have a great idea to improve the generator, please search the feature tracker first to ensure someone else hasn't already come up with the same great idea. If it hasn't been requested, please create a new request. While you're there vote on other feature requests to let the me know what is most important to you.
If you'd like to make your own changes ensure your Pull Request is made against the
Install Node.js. We recommend the LTS release. The SafariBooks-Downloader has been tested on most node versions between v4.4.5 and v.6.9.5 and should therefore cause no problems running on one of these versions. For more information about how to install it on your environment, see Installing Node.js via package manager. To verify your installation, run:
If a version is returned, you did successfully install Node.js. Next up, make sure npm is properly installed. To verify, run:
If the command returns a version number, you're all set. Next, we'll clone the repository.
git clone https://github.com/nicohaenggi/SafariBooks-Downloader.git cd SafariBooks-Downloader
Install all the dependencies with npm.
Congratulations! You've successfully installed SafariBooks-Downloader. If you desire to do so, you can install the tool globally on your machine. To do so, run:
npm install -g
To verify the installation, please run:
If the command returns a version number, you have successfully installed the tool globally. The current release is
npm install -g
npm install -gwill install the generator globally
The tool provides the following six options. The options --bookid, --username, --password and --output are required. However, if the username and password options are provided once, they will be cached and are no longer required to run the CLI.
https://www.safaribooksonline.com/library/view/building-apis-with/9781484224427/A435096_1_En_7_Chapter.htmlwhereas the id will be
An example showing how a SafariBooksOnline with id 9781484224427 is downloaded and converted into a ePub file testbook.epub.
bash safaribooks-downloader -b 9781484224427 -u nicohaenggi -p MySuperSecurePassword -o /Users/nicohanggi/Desktop/testbook.epub
An example showing how a SafariBooksOnline with id 9892595335538 is downloaded and converted into a ePub file testdebugbook.epub.
bash safaribooks-downloader -d -b 9781484224427 -u nicohaenggi -p MySuperSecurePassword -o /Users/nicohanggi/Desktop/testbook.epub
Copyright (c) 2017 Nico Haenggi - Released under the MIT License