Skip to main content

LEP Downloader - CLI app for parsing and downloading episodes of Luke's English Podcast

Project description

PyPI Status Python Version License

Read the documentation at https://lep-downloader.readthedocs.io/ Tests Codecov

pre-commit Black


About

LEP Downloader is a script for downloading the all FREE episodes of Luke’s ENGLISH Podcast.

It lets you to get all audio files (including audio tracks to video episodes) and also PDF files for each episode page.

Even though this script was written for convenient episode downloading, I don’t want to financially harm Luke in any way. I just want to make my life a bit easier (as usual for lazy IT person =). So consider donating to Luke’s English Podcast and becoming his premium subscriber. And of course, subscribe on his YouTube channel.

Read the full documentation on website.

🚀 Features

  • Download a range of episodes filtering by episode number or by episode date

  • Download only the last episode

  • Download PDF files of episodes web pages

  • Saving files to specified folder on your hard / solid / flash drive

  • Running script in quiet mode for automated routine

  • Writing log file in debug mode

🛠️ Requirements

  • Python 3.8+

  • Internet connection

💻 Installation

You can install LEP Downloader via pip from PyPI:

pip install lep-downloader

I do recommend you to use pipx for any CLI Python package. It let you install and run Python applications in isolated environments.

python -m pip install --user pipx
pipx install lep-downloader
lep-downloader --help

🕹 Usage

lep-downloader -ep 758

You can also use the short script name:

lep-dl --last

Please see the Usage Examples for details.

Or skim the Man Page for available options (if terminal is your best friend).

✨ What’s new in version 3

The third version was completely re-written by me (again). But this time with more fundamental and mature approach. I applied some OOP (object-oriented programming) principles and covered almost all functions with absolutely isolated unit tests.

Code base became more extendable and maintainable (I believe). I dropped support for file naming from old script versions. Also I removed (for awhile) video and add-ons download (I plan to add them again in the future, however - no any promises).

Archive parsing was improved (without skipping several episodes). Also I added built-in possibility to download files from reserve server, if primary link is not available (for any reason).

And many internal little things. You can read descriptions of pre-releases on Releases page (if you wish).

✊ Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

📝 License

Distributed under the terms of the MIT license, LEP Downloader is free and open source software. It means you can modify it, redistribute it or use it however you like as long as you do mention the author of the original script.

🐞 Issues

If you encounter any problems, please file an issue along with a detailed description.

🙏🏻 Credits

This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.

Script uses the following packages / libraries under the hood:

and other amazing Python packages for development and testing. See a full list of them in ‘dependencies’ section of pyproject.toml file.

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

lep-downloader-3.0.0b3.tar.gz (30.9 kB view details)

Uploaded Source

Built Distribution

lep_downloader-3.0.0b3-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

Details for the file lep-downloader-3.0.0b3.tar.gz.

File metadata

  • Download URL: lep-downloader-3.0.0b3.tar.gz
  • Upload date:
  • Size: 30.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.14

File hashes

Hashes for lep-downloader-3.0.0b3.tar.gz
Algorithm Hash digest
SHA256 0f1a629ab75ee4c40c2f36c4de73f11356397913ab759fc441826bfbb90ec01d
MD5 e514d1fe6e671f6377d65bcddf682f36
BLAKE2b-256 c4077dc9d3640defb0da354e4c8e0e0bc6f90144f1ecd33556df48252253b0dc

See more details on using hashes here.

File details

Details for the file lep_downloader-3.0.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for lep_downloader-3.0.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 7ae54b6a72f749b45a3d34e55f14968cb336dc0f6a311401ef96fe8fcab5a26a
MD5 f344701446a63df0bf2495c4480ee03c
BLAKE2b-256 c30c799fc94955f86ced4f48aa51e94d2d4b9bd27d166a5f0174d63690f26acd

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