Projects / any-dl


any-dl is a generic video downloader tool that uses a domain specific language to describe how to download videos from each video site.

Operating Systems

Recent releases

  •  18 Jun 2014 11:28

    Release Notes: A new Unknown_parser exception was added. The code was cleaned and refactored, and indentation was corrected. There are now two CLI switches for verbosity: -v and -vv. A new -sep was added for specificying the separator in output. Output was made more readable and error messages were enhanced. New "save_as" and "htmldecode" commands were added. Memory usage was optimized for bulk downloads. There were also new parsers and updates and enhancements for existing parsers.

    •  21 Feb 2014 20:07

      Release Notes: This release adds a command line option, -ms, that allows you to set a sleep-time (in milliseconds) for bulk-get. This is useful if you use a parser that may want to download some hundred (possibly large) files, which may cause problems at the server that is scraped. This option is to delimit the load for the source-server; just set a timeout of some seconds and let any-dl do its work without causing too much trouble.

      •  14 Feb 2014 02:30

        Release Notes: Expanded language features (more commands, and broader functionality of known commands). More and corrected video site parsers. Better handling of config files, making it easier to separate any-dl's parsers and your own parsers, and using XDG_CONFIG_HOME (additionally, not dogmatically). A new command line option: initial referrer. Partially cleaned up code and documentation.

        •  17 May 2013 01:49

          Release Notes: This release adds new site-parsers, new command line switches, parser language enhancements, and bugfixes.

          •  11 Feb 2013 00:30

            Release Notes: This release adds bugfixes, new commands (e.g., grep, delete), cookies support, and a simple TED parser.

            Recent comments

            03 Jul 2013 12:45 ouser

            Enhancing the last comment: When you have a file with URLs for which you want to create the desktop-files, then you can use this bash-script for this task:



            any-dl -f create_desktoplink.adl -p desktop `paste $URLS_FILE -s` > $RESULTS

            csplit $RESULTS --prefix=$PREFIX --suffix-format=$FORMAT /\#\ \-\-\-/ {*}

            rm -v generated_desktopfile_00000.desktop # sorry for the radcoded name ;-)

            03 Jul 2013 12:43 ouser

            How to create desktop-links files for Gnome Desktop from a list or URLs?

            It's about three lines of code, when using a certain parser for this task.

            First you create a file, say "create_desktoplink.adl" and it contans the following:

            parsername "desktop": ()
            print( "[Desktop Entry]" );
            print( "Encoding=UTF-8" );
            print("Name=", $title);
            print("URL=", $STARTURL);

            Then you call any-dl this way:

            $ any-dl -f create_desktoplink.adl -p desktop <list_of_urls> > RESULTS

            Then you need to split the results into seperated files:

            $ csplit RESULTS --prefix=generated_desktopfile_ /\#\ \-\-\-/ {*}

            Then you can remove the file with Index 00 with "rm".

            Thats it.

            17 May 2013 01:57 ouser

            Feel free to write or enhance site-parsers and submit them to me.
            I will possibly (not necessarily) add them to the any-dl-rc-file (possibly changed or unchanged).

            02 Feb 2013 02:13 ouser

            I forgot to mention in the README (added it now),
            that the file "rc-file.adl" must be copied to
            "$HOME/.any-dl.rc" so that the tool works out of the box.

            I added it to the README in 0.9.2b



            The file "rc-file.adl" does contain needed parser-definitions
            for any-dl to work as expected.
            This file must be saved to the home-directory as file ".any-dl.rc".

            So, please copy it from ./rc-file.adl" to $HOME/.any-dl.rc

            $ cp rc-file.adl $HOME/.any-dl.rc

            Alternatively you can use the "-f" option of any-dl
            to tell any-dl, which file contains the parser-definitions.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.