Giter Club home page Giter Club logo

fragments-download's Introduction

All purpose downloader

It is an all purpose downloader written completely in python

Features

  • Incorporates multi-threading and splits a large file into a number of pieces depending on the user
  • supports a feature of pausing and resuming the downloads any number of times
  • consistently writes the files to hard drive from from RAM hence allowing machines with low RAM cpacity to download lage sized files
  • written completely in python hence can be used in linux, mac and windows
  • has very little dependencies on python libraries
  • Downloading speed can be improved dramatically (upto 5 folds) if used over a LAN

Usage

  • Can be used to download almost any kind of file
  • supports pausing the downloads which can come handy if internet speed is slow

Installation

Installing Python and pip

We are using Python 3 . Reason we will be using the Python3, it’s the Future. The support for Python 2.7.x is provided till 2020, after that Python community won’t provide any updates for 2.7.x version. Where to install Python from? It depends on which operating system you are having.

  • If you have Linux/Mac Operating System, then you don’t need to install. They are shipped with python.
  • If you are a Windows user, then you have to install it all by yourself. There are 3 major ways:
    1. Downloading the Installation file from the official website of Python itself.
    1. Installing python from conda (installs other software with python) and mini-conda(will only install python). We will install python using miniconda
  • Install pip for various libraries needed.

Install the dependencies and devDependencies and open terminal.

$ sudo pip install pafy
$ sudo pip install youtube-dl

Usage

Firstly go the folder which contains the all the code.

Change the the no of fragments you want by altering the variable frag in line 21 of downloader.py. Recomended no of fragments are between 4 to 32. Default is set to 5.Then for almost any link this will be the standard way of downloading.

$ python3 downloader.py url_you_want_to_download

For videos just copy the youtube url and paste it and if you want the audio of that paticular video just add m after the code.For starting a single file download without fragmenting the file press ctrl + c and for stopping/ pausing the downloads press ctrl + c again

Example

Downloading a video from youtube.com

default number of fragments are 5 which will be created in the folder from which the srcipt is run.

pressing ctrl + c will initiate a single file download

Pressing ctrl + c will stop the download. Runnig the the command again will start the download. In the image below, the download is starting from 22% because the script already considers the downloded portion completed and shows percentage completion the rest of the file

Downloading a mp3 file from youtube

$ python3 downloader.py url_you_want_to_download m

The fragments will be deleted after the download is finished.

License

MIT License

Copyright (c) 2017 Crux

Created By

of

Members involved in the project :

fragments-download's People

Contributors

him1411 avatar hegdenaveen1 avatar

Watchers

James Cloos avatar

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.