Skip to content

lmbringas/packtpub-downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

457395e · Oct 5, 2020

History

23 Commits
Oct 3, 2020
Oct 3, 2020
Feb 7, 2019
Oct 3, 2020
Oct 3, 2020
Oct 3, 2020
Apr 11, 2019
Feb 7, 2019
Feb 12, 2019

Repository files navigation

PacktPub Downloader

Script to download all your PacktPub books inspired by https://github.com/ozzieperez/packtpub-library-downloader

Since PacktPub restructured their website packtpub-library-downloader became obsolete because the downloader used webscraping. So I figured out that now PacktPub uses a REST API. Then I found which endpoint to use for downloading books and made a simple script. Feel free to fork and PR to improve. Packtpub's API isn't documented :'(

Usage:

pip install -r requirements.txt
python main.py -e <email> -p <password> [-d <directory> -b <book file types> -s -v -q]
Example: Download books in PDF format
python main.py -e [email protected] -p p@ssw0rd -d ~/Desktop/packt -b pdf,epub,mobi,code

Docker integration

You must put your data in the .env file.

mv data.env-sample data.env

and replace the sample data with your login credentials.

docker-compose up

After the execution, you can see the content in the book directory.

Commandline Options

  • -e, --email = Your login email
  • -p, --password = Your login password
  • -d, --directory = Directory to download into. Default is "media/" in the current directory
  • -b, --books = Assets to download. Options are: pdf,mobi,epub,code
  • -s, --separate = Create a separate directory for each book
  • -v, --verbose = Show more detailed information
  • -q, --quiet = Don't show information or progress bars

Book File Types

  • pdf: PDF format
  • mobi: MOBI format
  • epub: EPUB format
  • code: Accompanying source code, saved as .zip files

I'm working on Python 3.6.0