Compare commits
2 Commits
9989e5f4c8
...
cf8f7752d4
Author | SHA1 | Date |
---|---|---|
Mike Lynch | cf8f7752d4 | |
Mike Lynch | 37498f1ce8 |
42
README.md
42
README.md
|
@ -1,9 +1,43 @@
|
|||
# autoradio
|
||||
|
||||
Auto download of mp3s from podcast feeds using a little Python script.
|
||||
A little Python script to download audio files from RSS feeds. Installation
|
||||
is messy and I have tested this on exactly two feeds, so it's my no means
|
||||
finished software.
|
||||
|
||||
## Installation
|
||||
|
||||
I haven't worked out how to intall pycurl with poetry, as it looks like it
|
||||
required a command-line flag to specify the SSL backend, and poetry doesn't
|
||||
seem to support that. So for my local install I pip installed it by hand
|
||||
I packaged this project with poetry and then discovered that poetry can't
|
||||
install pycurl properly, as the latter requires command-line options to compile
|
||||
it with the correct SSL backend. Here's the manual workaround:
|
||||
|
||||
> git clone https://git.tilde.town/bombinans/autoradio.git
|
||||
> cd autoradio
|
||||
> poetry install
|
||||
> poetry shell
|
||||
> pip uninstall pycurl
|
||||
> pip install --compile --install-option="--with-openssl" pycurl
|
||||
> poetry run autoradio --config config.json
|
||||
|
||||
The config file looks like this.
|
||||
|
||||
{
|
||||
"feeds": {
|
||||
"Utility Fog": {
|
||||
"url": "https://www.frogworth.com/utilityfog/feed/",
|
||||
"dir": "/media/pi/Storage/Music/Utility Fog"
|
||||
},
|
||||
"RA Podcast": {
|
||||
"url": "https://ra.co/xml/podcast.xml",
|
||||
"dir": "/media/pi/Storage/Music/RA_Podcast"
|
||||
}
|
||||
},
|
||||
"max": 10
|
||||
}
|
||||
|
||||
Each feed has a URL and a directory where the files will be downloaded. If a
|
||||
file with the same name is already present, it won't be re-downloaded.
|
||||
|
||||
The value in "max" is the number of entries to look at from each feed, starting
|
||||
from the latest. The script parses the RSS feed and looks for links which
|
||||
seem likely to contain audio and tries to fetch them using pycurl (this handles
|
||||
things like redirects, hopefully).
|
Loading…
Reference in New Issue