Skip to main content

No project description provided

Project description

header.png

This is a tool for downloading free O’Reilly ebooks of different categories, see http://shop.oreilly.com/category/ebooks.do.

This is not using scrapy on purpose (partly to avoid a configuration fest) and is implemented in two phases:

  1. crawling O’Reilly online shop to compile a list of URLs for PDF files to download, and

  2. downloading all files from the list created in 1.

Step 1 is done sequentially (for now), while for step 2 you can choose between a sequential and a parallel version using ‘requests’ and ‘aiohttp’, respectively.

See the files session1.txt, session2.txt and session3.txt in the docs/sessions folder for some use-cases of varying sizes.

Installation

You can install freebora with a simple pip install freebora from the Python Package Index, or after cloning or downloading this code from GitHub and running python3 setup.py install in its root directory. At the moment it is intended to work only on Python 3.

Tests

You can run the (pretty small) test suite like this:

# using py.test (needs a pip install pytest):
py.test -v tests

# using a minified version of py.test, included in runtests.py:
python3 setup.py test

Individual tests can be run like this:

py.test -s tests/test_oreilly_shop.py

Todo

  • add an async version of the function to collect URLs (step 1 above)

  • improve command-line interface

  • add feature to download not only PDFs, but other formats, too

  • add feature to interactively select individual ebooks to download

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

freebora-0.1.0.tar.gz (203.8 kB view details)

Uploaded Source

Built Distribution

freebora-0.1.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file freebora-0.1.0.tar.gz.

File metadata

  • Download URL: freebora-0.1.0.tar.gz
  • Upload date:
  • Size: 203.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for freebora-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4361dc67fb9210ce09bc10b55f9ce034c794edca4724fda9585a0de393b324d3
MD5 f6bacbbe62cb0a06ced137022d28dbca
BLAKE2b-256 ea2ac4c79bc8f7ebfc512c3b5c06c8d6ea9292fdf5b862ebedd54fd53453b31e

See more details on using hashes here.

File details

Details for the file freebora-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for freebora-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f1989b0c37598dbdc8dcd1d71bb5384455f5b2ad78740f0bd0dd4b5ba09ef932
MD5 2c0052ede580c3ca647b893ebde6b2e7
BLAKE2b-256 5c91fb31ddaaa2eb3f00729bb8a38e92a23bd324cf98c58c6a2266681a13565c

See more details on using hashes here.

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