Table of Contents

deRSS

Description

deRSS parses RSS 2.0 feeds and downloads files referenced in <enclosure url=””/> or (if not present) <link> elements. To avoid downloading files twice deRSS stores the publication date of the newest downloaded file. deRSS works nicely with cron.

deRSS is licensed under the GPL v3 and was written in groovy. To run it you need java and groovy1); unless, you use the derss-nogroovy.jar file linked below which includes the groovy libraries and therefore only needs java.

Usage

% ./derss.sh --help
usage:
 -c,--configDir <arg>     Specifies the configuration directory to use.
 -D,--debug               Enables debugging output.
 -d,--downloadDir <arg>   Specifies the download directory to use.
 -h,--help                Usage information.
 -p,--postfix <arg>       Checks if the names of downloaded files end with
                          <arg>, attaches <arg> if not.
 -q,--quiet               Turn off verbosity.
 -v,--verbose             Increases verbosity, can be used multiple times.

You can setup deRSS as demonstrated below.

% mkdir ~/.deRSS/
% echo "http://feeds.themoth.org/themothpodcast" > ~/.deRSS/feeds.txt
% mkdir themoth
% ./derss.sh -d themoth/
Loaded feeds from file: ["http://feeds.themoth.org/themothpodcast"]
Downloading 'moth-podcast-61-michaela-murphy.mp3'
Downloading 'moth-podcast-60-josh-swiller.mp3'
[...]
Downloading 'moth-podcast-48-elna-baker.mp3'
Downloading 'moth-podcast-47-joe-jackson.mp3'

If you run deRSS again it will remember the publication date of the newest file it downloaded and only download newer files.

% ./derss.sh -d themoth/ -v
Logger verbosity: DEBUG
Loaded feeds from file: ["http://feeds.themoth.org/themothpodcast"]
Item too old, not downloading it: 'http://feeds.themoth.org/~r/themothpodcast/~5/UGnQHfSGZAs/moth-podcast-61-michaela-murphy.mp3'
Item too old, not downloading it: 'http://feeds.themoth.org/~r/themothpodcast/~5/sTHOfJgT_Ps/moth-podcast-60-josh-swiller.mp3'
[...]
Item too old, not downloading it: 'http://feeds.themoth.org/~r/themothpodcast/~5/Udk3pewJESM/moth-podcast-48-elna-baker.mp3'
Item too old, not downloading it: 'http://feeds.themoth.org/~r/themothpodcast/~5/66LGBojGJ0s/moth-podcast-47-joe-jackson.mp3'

Development

Files

1) deRSS was developed using groovy v1.5.6. Should you run into problems with older groovy versions please try updating.