Dumb downloader that scrapes the web
Go to file
jackyzy823 27e2a85721 Merge pull request #669 from sceext2/iqiyi-simplify
[iqiyi] simplify mix() function
2015-09-25 21:31:21 +08:00
src/you_get [iqiyi] simplify mix() function 2015-09-24 15:32:56 +08:00
tests remove test_ted() 2014-08-06 17:38:28 +02:00
.gitignore update README 2014-09-21 06:56:28 +02:00
.travis.yml update .travis.yml (add 3.5 and nightly) 2015-09-21 00:50:41 +02:00
CHANGELOG.rst version 0.3.35 2015-09-21 01:23:46 +02:00
CONTRIBUTING.md add CONTRIBUTING.md; fix #118 2013-02-28 23:03:25 +01:00
LICENSE.txt update LICENSE.txt 2014-09-20 22:30:39 +02:00
Makefile update Makefile & setup.py 2015-09-21 01:57:43 +02:00
MANIFEST.in use .rst as the extension name of reStructuredText files; deprecate README.txt 2014-09-21 04:23:28 +02:00
README.md update README.md 2015-09-22 10:50:22 +02:00
setup.cfg version 0.1.0 2012-09-01 00:55:45 +02:00
setup.py update Makefile & setup.py 2015-09-21 01:57:43 +02:00
you-get support for frozen using cx_freeze 2014-08-13 00:22:16 +08:00
you-get.json update you-get.json 2015-09-21 01:57:00 +02:00

You-Get

Build Status PyPI version Gitter

You-Get is a video downloader for YouTube, Youku, niconico and a few other sites.

you-get is a command-line program, written completely in Python 3. Its prospective users are those who prefer CLI over GUI. With you-get, downloading a video is just one command away:

$ you-get http://youtu.be/sGwy8DsUJ4M

Fork me on GitHub: https://github.com/soimort/you-get

Features

Supported Sites

Prerequisites

Python 3

you-get is known to work with:

  • Python 3.2
  • Python 3.3
  • Python 3.4
  • Python 3.5
  • PyPy3

Installation

You don't have to learn the Python programming language to use this tool. However, you need to make sure that Python 3 (with pip) is installed on your system.

On Linux and BSD, installation made easy with your package manager:

  • Find and install packages: python3 and python3-pip (if your distro did not make Python 3 the default, e.g., Debian)
  • Or packages: python and python-pip (if your distro made Python 3 the default, e.g., Arch)

On other systems (which tend to have quite evil user experience), please read the documentation and ask Google for help:

1. Using Pip (Standard Method)

$ [sudo] pip3 install you-get

Check if the installation is successful:

$ you-get -V

2. Downloading from PyPI

You can also download the Python wheel for each release from PyPI.

If you choose to download the wheel from a PyPI mirror or elsewhere, remember to verify the signature of the package. For example:

$ gpg --verify you_get-0.3.30-py3-none-any.whl.asc you_get-0.3.30-py3-none-any.whl

3. Downloading from GitHub

Download it here or:

$ wget -O you-get.zip https://github.com/soimort/you-get/zipball/master
$ unzip you-get.zip

Use the raw script without installation:

$ cd soimort-you-get-*/
$ ./you-get -V

To install the package into the system path, execute:

$ [sudo] make install

Check if the installation is successful:

$ you-get -V
$ git clone git://github.com/soimort/you-get.git

Use the raw script without installation:

$ cd you-get/
$ ./you-get -V

To install the package into the system path, execute:

$ [sudo] make install

Check if the installation is successful:

$ you-get -V

Upgrading

1. Using Pip

$ [sudo] pip3 install --upgrade you-get

Getting Started

Display the information of a video without downloading:

$ you-get -i 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

Download a video:

$ you-get 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

Download multiple videos:

$ you-get 'http://www.youtube.com/watch?v=sGwy8DsUJ4M' 'http://www.youtube.com/watch?v=8bQlxQJEzLk'

By default, program will skip any video that already exists in the local directory when downloading. If a temporary file (ends with a .download extension in its file name) is found, program will resume the download from last session.

To enforce re-downloading of videos, use option -f: (this will overwrite any existing video or temporary file)

$ you-get -f 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

Set the output directory for downloaded files:

$ you-get -o ~/Downloads 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

Use a specific HTTP proxy for downloading:

$ you-get -x 127.0.0.1:8087 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

By default, the system proxy setting (i.e. environment variable http_proxy on *nix) is applied. To disable any proxy, use option --no-proxy:

$ you-get --no-proxy 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

Watch a video in your media player of choice: (this is just a trick to let you get rid of annoying ads on the video site)

$ you-get -p vlc 'http://www.youtube.com/watch?v=sGwy8DsUJ4M'

FAQ

Q: Some videos on Youku are restricted to mainland China visitors. Is it possible to bypass this restriction and download those videos?

A: Thanks to Unblock Youku, it is now possible to access such videos from an oversea IP address. You can simply use you-get with option -y proxy.uku.im:8888.

Q: Will you release an executable version / Windows Installer package?

A: Yes, it's on my to-do list.

Command-Line Options

For a complete list of available options, see:

$ you-get --help
Usage: you-get [OPTION]... [URL]...

Startup options:
    -V | --version                           Display the version and exit.
    -h | --help                              Print this help and exit.

Download options (use with URLs):
    -f | --force                             Force overwriting existed files.
    -i | --info                              Display the information of videos without downloading.
    -u | --url                               Display the real URLs of videos without downloading.
    -c | --cookies                           Load NetScape's cookies.txt file.
    -n | --no-merge                          Don't merge video parts.
    -F | --format <STREAM_ID>                Video format code.
    -o | --output-dir <PATH>                 Set the output directory for downloaded videos.
    -p | --player <PLAYER [options]>         Directly play the video with PLAYER like vlc/smplayer.
    -x | --http-proxy <HOST:PORT>            Use specific HTTP proxy for downloading.
    -y | --extractor-proxy <HOST:PORT>       Use specific HTTP proxy for extracting stream data.
         --no-proxy                          Don't use any proxy. (ignore $http_proxy)
         --debug                             Show traceback on KeyboardInterrupt.

License

You-Get is licensed under the MIT license.

Reporting an Issue / Contributing

Please read CONTRIBUTING.md first.