GithubHelp home page GithubHelp logo

downloader-ui's Introduction

downloader-ui

This is a website based on you-get, youtube-dl and other downloader program. It provide a web ui that's easier for user to download video.

app

Deploy

config

Before deploying the project, you should first change some settings.

In webui/src/config.js, you should change baseUrl to the ip:port or domain name of the host.

manual

The web use Python Flask as backend and React as frontend. So ensure the installation of Python and npm. Also, the project relies on wget, so make sure you install it.

In src/ run

pip install -r requirements.txt

to install python dependencies.

Then in webui run

npm install
npm run-script build

to install javascript dependencies and compile the website to webui/build.

Finally in src run

python app.py

to start the project. You can vist ip:port or domain name to visit the project.

Docker

Run

docker build . -t downloader

to build the image. If you live in China, maybe you need to build in this way to accelerate your building process :

docker build . -t downloader -f Dockerfile.cn

Then run

docker run -d --name downloader -v ${PATH/TO/YOU/VOL}:/dl/src/dl -p 21991:21991 --restart always downloader

to run the container.

Usage

Currently the project supports three kinds of download tools.

For you-get you just need to fill every options and click download.

For youtube-dl you should notice that playlist function is unable to set.

And for wget, socks proxy is also useless. But you can enable Force CMD args to ignore all settings in the web except that in cmd args, and that performs just like

wget $(CMD ARGS)

Then you can do anything using wget.

downloader-ui's People

Contributors

davepeake avatar mqlhaha avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

downloader-ui's Issues

Add Support for Gallery-DL

Add support for downloading image galleries using Gallery-DL:

https://github.com/mikf/gallery-dl

It’s a great companion to the various YouTube downloads, and can be used in combination with them for sites like Instagram.

As for the implementation, it would be great if the existing URL text box could be used for Gallery-DL too. If needed though it could also be a separate box dedicated to images and galleries.

strange performance in sending downloading logs

In commit a11f276 , I added websocket to enable the communication of client and server.

If I coded properly, after the connection is created, the server will begin to send logs using the following code

for line in self.pipe.stdout:
      print(line)
      emit("trans_task_log",line)

However, in server log the print worked as expected while the client can't receive the emitted log until the downloading process is done. But I think the client should get the information as soon as the server output info. So what may cause this problem?

Great project, some suggestions

Hello and thank you for this great contribution!
I have some suggestions:
Change youtube-dl to yt-dp (see fork and maybe not bind it to specific version)

youtube-dl==2021.2.10

I know Dockefile is up to each user, but maybe don't put a specific CDN located in China as default:

RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories && \

&& npm config set registry https://registry.npm.taobao.org

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.