Skip to main content

Claim Your Free PacktPub eBook

Project description

https://img.shields.io/circleci/project/bogdal/freepacktbook/master.svg https://img.shields.io/pypi/v/freepacktbook.svg

Claim Your Free PacktPub eBook automatically.

Quickstart:

$ pip install freepacktbook

$ export PACKTPUB_EMAIL=my@email.com
$ export PACKTPUB_PASSWORD=my_password

$ claim_free_ebook

Claim your daily free PacktPub ebook and download it:

$ export PACKTPUB_BOOKS_DIR=/path/to/my/books

$ claim_free_ebook --download

Download all your ebooks:

freepacktbook allows you to backup all your ebooks and code files.

$ download_ebooks --formats mobi pdf --with-code-files

To see more information:

$ download_ebooks -h

Cron configuration:

Edit the current crontab:

$ crontab -e

Add the following lines:

#!/bin/bash
SHELL=/bin/bash
PACKTPUB_EMAIL='my@email.com'
PACKTPUB_PASSWORD='my_password'

0 8 * * * /path/to/claim_free_ebook >> /tmp/claim_free_ebook.log 2>&1

This command shows the direct path to claim_free_ebook:

which claim_free_ebook

Notifications (optional)

Slack integration

Set additionally the following environment variables:

export SLACK_URL=https://hooks.slack.com/services/...
export SLACK_CHANNEL=random

$ claim_free_ebook --slack
https://github-bogdal.s3.amazonaws.com/freepacktbook/slack.png

Docker image

You can build your own docker image containing configured cron service. By default, the claim_free_ebook command is run daily at 8:00am CEST. See Dockerfile.

Build an image:

$ docker build -t freepacktbook .

If you want to change the default time zone, use the TZ build argument:

$ docker build --build-arg TZ=UTC -t freepacktbook .

Run a new container:

$ docker run -d \
    --name freepacktbook \
    -e PACKTPUB_EMAIL=<my-packtpub-email> \
    -e PACKTPUB_PASSWORD=<my-packtpub-password> \
  freepacktbook

The PACKTPUB_ARGS env variable passes the additional arguments to the claim_free_ebook command:

$ docker run -d \
    --name freepacktbook \
    --restart=always \
    -e PACKTPUB_EMAIL=<my-packtpub-email> \
    -e PACKTPUB_PASSWORD=<my-packtpub-password> \
    -e PACKTPUB_ARGS='--download' \
    -v <path-to-books-dir>:/data \
  freepacktbook

Also available on Docker Hub bogdal/freepacktbook:latest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

freepacktbook-1.0.2.tar.gz (16.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page