Categorygithub.com/suchipi/domdom-go
modulepackage
0.1.0
Repository: https://github.com/suchipi/domdom-go.git
Documentation: pkg.go.dev

# README

domdom-go

Background

DomDomSoft Anime Downloader is a Windows application that facilitates downloading anime.

The Windows application is a SOAP client and download manager. The owner of DomDomSoft runs a SOAP server that gives download links back to the client.

So what's this?

domdom-go is a command-line client to the same SOAP server. However, it is cross-platform (should work on Windows, OS X, Linux, *BSD, pretty much anywhere Go is available), and can be scripted and run headless.

Usage

I'll just give some shell output here; should be pretty self-explanatory.

suchipi@debian:~/anime# domdom-go 
NAME:
   domdom-go - Download Anime!

USAGE:
   domdom-go [global options] command [command options] [arguments...]

VERSION:
   0.0.1

AUTHOR:
  Suchipi Izumi - <[email protected]>

COMMANDS:
   update, u            Update the anime list
   listepisodes, l      List available episodes for a series
   download, d          Download episode(s)
   help, h              Shows a list of commands or help for one command
   
GLOBAL OPTIONS:
   --outputdir, -o "~/Downloads/Anime"          Directory to save into. Directories for series names will be created within this directory. [$DOMDOM_OUTPUTDIR]
   --key, -k                                    DomDomSoft Anime Downloader key. Without a key, there is a limit of 5 episodes downloaded per 24 hours. [$DOMDOM_KEY]
   --animelist, -l "~/.domdom_anime_list"       Location to save/load anime list [$DOMDOM_ANIMELIST]
   --help, -h                                   show help
   --version, -v                                print the version
   
suchipi@debian:~/anime# echo $DOMDOM_KEY
<REDACTED>
suchipi@debian:~/anime# echo $DOMDOM_OUTPUTDIR
.
suchipi@debian:~/anime# domdom-go listepisodes
Please specify a series title to list episodes of.
NAME:
   listepisodes - List available episodes for a series

USAGE:
   command listepisodes [command options] [arguments...]

OPTIONS:
   --title, -t  Title of series
   
suchipi@debian:~/anime# domdom-go listepisodes -t "Kantai Collection"
Episodes for Kantai Collection:
1: [HorribleSubs] Kantai Collection - 01 [720p].mkv (352MB)
2: [HorribleSubs] Kantai Collection - 02 [720p].mkv (352MB)
3: [HorribleSubs] Kantai Collection - 03 [720p].mkv (353MB)
4: [HorribleSubs] Kantai Collection - 04 [720p].mkv (352MB)
5: [HorribleSubs] Kantai Collection - 05 [720p].mkv (353MB)
6: [HorribleSubs] Kantai Collection - 06 [720p].mkv (353MB)
7: [HorribleSubs] Kantai Collection - 07 [720p].mkv (353MB)
8: [HorribleSubs] Kantai Collection - 08 [720p].mkv (353MB)
9: [HorribleSubs] Kantai Collection - 09 [720p].mkv (352MB)
suchipi@debian:~/anime# domdom-go download
Please specify a series title to download episodes from.
NAME:
   download - Download episode(s)

USAGE:
   command download [command options] [arguments...]

OPTIONS:
   --title, -t          Title of series to download
   --episode, -e        Episode filename to download
   --episodeid, -i      Episode id to download
   --all, -a            Download entire series
   --redownload, -r     Redownload existing files
   --keep-zip-files, -z Keep zip files instead of removing them after extraction
   
suchipi@debian:~/anime# domdom-go download -t "Kantai Collection" -i 4
Downloading file [HorribleSubs] Kantai Collection - 04 [720p].mkv from series Kantai Collection...
Part 1 of 2: [HorribleSubs] Kantai Collection - 04 [720p].00000.zip.part (314MB)
Part 2 of 2: [HorribleSubs] Kantai Collection - 04 [720p].00001.zip.part (39MB)
Unzipping file [HorribleSubs] Kantai Collection - 04 [720p].mkv from 2 parts...
Download complete!
suchipi@debian:~/anime# ls
Kantai Collection
suchipi@debian:~/anime# ls Kantai\ Collection/
[HorribleSubs] Kantai Collection - 04 [720p].mkv
suchipi@debian:~/anime# 

###Building

Building is the same as (almost) any go project:

sudo apt-get install golang-go //or equivalent for your platform
mkdir ~/go
export GOPATH=~/go
go get github.com/suchipi/domdom-go
go install github.com/suchipi/domdom-go

After these steps, the domdom-go binary will reside in $GOPATH/bin.

###Notes

If you don't have a key for DomDomSoft Anime Downloader, you will only be able to download 5 episodes per 24 hours.

###Todo

  • Progress bar for downloads
  • Ability to search the list of available anime
  • Ability to override final save dir (in case you want to put eg "Sword Art Online II" in "Sword Art Online/Season 2" instead)

# Packages

Package domdom handles communication and XML parsing with the DomDomSoft Anime Downloader server.