After I explained that soup.io could be used to mirror (backup) a tumblr account here http://alashazam.blogspot.com/2014/11/tumblr-backup-solution.html
The idea to backup a soup.io account started to be a logical step.
After some research I found some - but none of them worked (mostly because they required additional libraries I could never found, or because there were obsolete or simply too old)
The existing solutions
Here they are : Soup.io Export Tools soup official post -- have seen various laments about this not working, so. probably not working.
This is the official way to export (backup) your soup account and the result is a huge (depending on your account - mine was like 2.3MB) rss file - which is in fact an xml file - where all the posts are stored, except for the medias (pictures mostly)
backup script by @neingeist
A shell script (which requires xsltproc installed) - the author says on his github page that it doesn't work - pass
lua script by @severak
need lua (and some libraries like "parsers.dkjson"
and "socket.http" which I could never found) - pass
soupIO downloader by @falk This one was interesting but same requires additional libraries - "fs", "lazy", "async" and "http" couldn't find most of them - pass
backup to wordpress by @tiefpunkt
Not wanted to install a wordpress, on top of a tumblr, on top of a soup ... maybe I'll try one day .. just for fun.
A new backup solution in java
The idea was to start from the official export tools - generate the rss file then use that file to backup all the medias (store in the xml in the tag named "enclosure")
the java source is just doing that - it reads the rss file, look for the tag name, then start a download for each instance and that's it.
Usage is simple : after downloading the soupBackup.java you can compile it on your machine with "javac soupBackup.java" or you can download that file from the bitbucket repository - or use the soupBackup.jar.
read the readme file for more details.
$ java soupBackup your-rss-file.rss
or
$ java -jar soupBackup.jar your-rss-file.rss
And then you will have to wait for all the files to be downloaded, which I repeat might take some time.
I've tested this program on my own soup.io account - and with small subset of that rss file.
The pro : it works,I've tested it this week, doesn't requires weird library - and java is pretty common - so feel free to change the code for your needs.
One of the cool upgrade that might be done, would be to add a filechooser to select the rss file, then ask for backup after a certain date (that would allow to use this backup solution from times to times to catch up on the new posts).
The cons : be careful it is an early version and might contains some bugs.
Step 1 : create a new project as "command line Utility" and "standard tool" :
Step 2: open megahal.h, megahal.c and main.c as source files (forget the debug.c file it isn't necessary and it won't compile (because of many errors))
Step 3 : In file megahal.c - put in comment the include "debug.h" - so it won't try to link with this file we don't want.
Step 4 : in main.c - put in comment the line include malloc.h - and instead add include "/usr/include/malloc.h" - then as in step 3 put in comment the call to "debug.h"
Step 5 : Go ahead and press Build and Go - in the build folder you will get the megahal-mac (assuming you named the project as such) and you can then use of the Aritificial Intelligence to play with (I choose Aliens - I like to speak with Bishop!)