forked from askvictor/Ichapod
-
Notifications
You must be signed in to change notification settings - Fork 0
Ichapod is a GPLv3 Plython 3 script designed to download and process podcasts in a headless environment. It handles filenames, tags, and even cover art.
License
shikasta-net/Ichapod
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Ichapod by Kym Eden, inspired by Patrick Simonds ([email protected]) --------------------------------------------------------------------- What is it? ----------- This is a Python program intended to be run as a Cron job, or by hand as needed. Quite simply, Ichapod downloads files from podcast feeds and formats them nicely. By "nicely", I mean it outputs files with all the ID3 tags filled in, including cover art (if supplied). The filenames are also very human readable, making it easier to archive & organize podcasts. Setup & Use ----------- Docker and python have made set-up much simpler. If you want to run without docker, simply use pip3 to install the requirements file. Otherwise, docker will build the image with everything you need, and you can even pull a prebuilt image from my repository. The program requires: - a yaml file containing a list of podcasts (please see example _podcasts.yml_ file), and - the output folder for the organised episodes and _.log_ folder. Download history is tracked in an ordered text file _.download_record_, but files are not overwritten if they already exist. This is largely incompatible with the previous versions, except for the podcast list which will be ingested and reformatted: the download record, logs, and file naming and tagging have all been changed. The script will attempt to load an episode file with matching name if found, but the difference in internal tagging will likely cause an error. These will be marked in the download log as already existing and skipped in subsequent runs, or you can use the --over-write flag if you wish to replace the files with newer tagged versions. Testing ------- Run `python3 -m nose` History ------- Much as the original author, I wanted to be able to listen to podcasts my way, when and how I chose. I adapted the original Ichapod by putting in Docker to keep it working, made it more configurable and able to handle unicode more reliably, but eventually this became too much hassle when episodes started having titles containing the magic strings being used to unpack and parse episode structure; so I rewrote the whole concept in python.
About
Ichapod is a GPLv3 Plython 3 script designed to download and process podcasts in a headless environment. It handles filenames, tags, and even cover art.
Topics
Resources
License
Stars
Watchers
Forks
Languages
- Python 97.9%
- Dockerfile 1.2%
- Shell 0.9%