Fixed .gitignore
Fixed description fetch logs
Caching descriptions as well, to avoid continuous scraping
This program fetches the latest IlPost releases from one channel via RSS, plays to a virtual Pulse interface, records them with ffmpeg and creates a new RSS feed pointing to the downloaded files.
This is meant for personal use in a podcast app.
The configuration file is a json
-encoded list of dictionaries like the
following.
[
{
"label": "<label to assing the feed>",
"feed_url": "<url of the RSS feed associated to the IlPost channel>",
"logo_url": "<url of the logo to set in the RSS feed>"
}
]
A folder with the label
name is created for each channel, with mp3
files named with the IlPost episodes file name. Files are matched with
the title, etc. in the created RSS feed.
The dependencies are the following
selenium
feedparser
pulsectl
feedgen
ffmpeg
pulseaudio
firefox
geckodriver
which
The program is run by setting the credentials, package system variables and opening the configuration file like this.
export BASE_URL=podcast.example.com
export USERNAME=<username>
export PASSWORD=<password>
export FIREFOX=$(which firefox)
export GECKODRIVER=$(which geckodriver)
python podcasts_ilpost.py configuration.json