Skip to content

Another webui for youtube-dl powered by Flask.

License

Notifications You must be signed in to change notification settings

d0u9/youtube-dl-webui

Repository files navigation

youtube-dl-webui

Another webui for youtube-dl powered by Flask.

youtube-dl is a powerful command-line based tool aims to download videos from Youtube.com and a few more sites. However, it lacks a manager to control and schedule all downloading tasks separately. Also, for people who like me prefers to deploy downloading tasks on a home-server, the ability to manage tasks remotely comes essentially.

There has been a webui for youtube available on Github, Youtube-dl-WebUI. The drawbacks of this project is that it writes in PHP and youtube-dl writes in python. What makes things more worse is that, to use PHP, a web server is needly inevitably. This complexes service deployment and makes it not very 'light'.

issues are welcomed!

Screenshot

screenshot1

Prerequisite

This project is writen under the python 3.6, I haven't test the codes in any other python versions. So, I hightly recommend you to use python 3.6 to avoid any troubles.

Also, we need ffmpeg for post processing. Lack of ffmpeg may case some funtions not working.

Install

To install youtube-dl-webui, you have to firstly install youtube-dl and Flask, then simply execute the following command:

python setup.py install

How to use

Defaultly, youtube-dl-webui will find the configuration file in /etc directory named youtube-dl-webui.conf. The configuration file, however, need not to be always placed in such a place. Instead, the -c option is used to point out the configuration file.

Configuration file is json formatted. An example configuration file can be found in the root directory of project.

Currently, not to much options available, use -h to find out all of them.

After everything is ready, simply execute:

youtube-dl-webui -c CONFIGURATION_FILE

A server will be started locally. The default port is 5000.

Note, you have to remove proxy configuration option in your config file. I write it here for illustrating all valid config options.

Docker image

There also exists a docker image to easy the deployment. Check HERE for more.