天天看點

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

you-get

  • 簡介
  • 安裝方法
    • 依賴環境:
    • 方法1:通過pip
    • 方法2:Git克隆
    • 驗證
    • 更新
    • 解除安裝
  • 視訊下載下傳
    • B站視訊下載下傳
    • 設定下載下傳檔案的路徑和名稱
  • 在媒體播放器中流式傳輸線上視訊
  • 音樂下載下傳
  • 圖檔下載下傳
  • 自動搜尋下載下傳視訊
  • python代碼批量下載下傳
  • 結語

簡介

You-Get是一個很小的指令行程式,可以從網站下載下傳媒體内容(視訊,音頻,圖像)。具體的用處有:

  • 從B站,愛奇藝,網易雲音樂等熱門網站下載下傳視訊/音頻。
  • 通過抓取網頁下載下傳(感興趣的)圖像。
  • 在媒體播放器中流式傳輸線上視訊。
  • 爬取最多300條B站彈幕

安裝方法

依賴環境:

  • Python 3.2或以上
  • FFmpeg 1.0或以上

    python的安裝可以參考其他部落格,建議安裝python3.7

    其中FFmpeg的下載下傳界面:FFmpeg下載下傳

方法1:通過pip

可以直接通過指令行安裝:

pip3 install you-get
           

或者通過鏡像安裝:

pip install you-get -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
           

方法2:Git克隆

即使您不經常使用Python編寫代碼,這也是所有開發人員的推薦方法。

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

然後将克隆的目錄放入您的PATH中,或運作./setup.py install以安裝you-get到永久路徑。

驗證

在指令行輸入:

you-get
           

如果得到如下界面,則成功:

usage: you-get [OPTION]... URL...

A tiny downloader that scrapes the web

optional arguments:
  -V, --version         Print version and exit
  -h, --help            Print this help message and exit

Dry-run options:
  (no actual downloading)

  -i, --info            Print extracted information
  -u, --url             Print extracted information with URLs
  --json                Print extracted URLs in JSON format

Download options:
  -n, --no-merge        Do not merge video parts
  --no-caption          Do not download captions (subtitles, lyrics, danmaku, ...)
  -f, --force           Force overwriting existing files
  --skip-existing-file-size-check
                        Skip existing file without checking file size
  -F STREAM_ID, --format STREAM_ID
                        Set video format to STREAM_ID
  -O FILE, --output-filename FILE
                        Set output filename
  -o DIR, --output-dir DIR
                        Set output directory
  -p PLAYER, --player PLAYER
                        Stream extracted URL to a PLAYER
  -c COOKIES_FILE, --cookies COOKIES_FILE
                        Load cookies.txt or cookies.sqlite
  -t SECONDS, --timeout SECONDS
                        Set socket timeout
  -d, --debug           Show traceback and other debug info
  -I FILE, --input-file FILE
                        Read non-playlist URLs from FILE
  -P PASSWORD, --password PASSWORD
                        Set video visit password to PASSWORD
  -l, --playlist        Prefer to download a playlist
  -a, --auto-rename     Auto rename same name different files
  -k, --insecure        ignore ssl errors

Proxy options:
  -x HOST:PORT, --http-proxy HOST:PORT
                        Use an HTTP proxy for downloading
  -y HOST:PORT, --extractor-proxy HOST:PORT
                        Use an HTTP proxy for extracting only
  --no-proxy            Never use a proxy
  -s HOST:PORT or USERNAME:[email protected]:PORT, --socks-proxy HOST:PORT or USERNAME:[email protected]:PORT
                        Use an SOCKS5 proxy for downloading

           

裡面也包含了可用參數和指令。

其中比較重要的有:

選項 說明
-i 顯示資源資訊,比如說格式、清晰度、大小等
-u 指定下載下傳或檢視的url,有時候可以省略-u直接加上url
-o 設定輸出檔案夾,即儲存路徑,若不指定,則儲存在目前工作目錄
-O 設定檔案名,可采用預設檔案名
-f 強制覆寫已存在的檔案
-l 優先下載下傳整個清單
-P 使用密碼(若通路視訊需要密碼)
-t 設定逾時時間,機關是秒
-c 使用cookie,加載cookies.txt 或者cookies.sqlite

更新

通過以下指令行進行更新:

pip install --upgrade you-get
           

解除安裝

解除安裝的指令也和其他差不多:

pip uninstall you-get
           

視訊下載下傳

B站視訊下載下傳

需要使用 --info/-i 選項檢視所有可用的品質和格式:

在指令行輸入:

you-get -i '視訊連結'
           

以B站視訊為例:

you-get -i 'https://www.bilibili.com/video/BV1iz4y1m7KF?spm_id_from=333.851.b_62696c695f7265706f72745f6469676974616c.46'
           

會得到如下界面:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

裡面包含了可以下載下傳的視訊的格式,在

# download-with: you-get --format=flv [URL]
           

中有提示下載下傳方法,以上面flv視訊為例:

you-get --format=flv 'https://www.bilibili.com/video/BV1iz4y1m7KF?spm_id_from=333.851.b_62696c695f7265706f72745f6469676974616c.46'
           
you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

在檔案夾中檢視,預設下載下傳到主檔案夾那裡。

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

除了視訊檔案之外,還下載下傳了300條B站彈幕。

設定下載下傳檔案的路徑和名稱

使用–output-dir/-o選項設定路徑,并使用–output-filename/-O設定下載下傳檔案的名稱,例:

you-get -o ~/Videos -O videos '視訊連結'
           

在媒體播放器中流式傳輸線上視訊

使用–player/-p選項将視訊輸入到您選擇的媒體播放器中,例如mpv或vlc,而不用下載下傳它:

you-get -p vlc '視訊連結'
           

或者,如果您希望在浏覽器中觀看視訊,而沒有廣告或評論部分:

you-get -p chromium '視訊連結'
           

經過我自己的測試,利用ubuntu的火狐浏覽器,有反應,打開了一個視窗但是報錯了,可能和B站的政策有關吧。

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

音樂下載下傳

經過實測以及官方表格,QQ音樂暫時下載下傳不了。

以網易雲音樂為例:

指令行輸入:

就可以得到具體資訊:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

由于隻有一個版本,是以預設下載下傳就行:

得到:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

同時下載下傳了歌詞和歌曲:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

圖檔下載下傳

從官方表格來看,支援圖檔下載下傳的國内網站不是很多,隻有B站、百度貼吧和快手。

直接以圖檔的位址為例:

得到資訊,代表成功:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

下載下傳輸入指令行:

即可下載下傳完成。

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

自動搜尋下載下傳視訊

可以将任何内容傳遞給you-get。如果該網址無效,you-get将進行Google搜尋并為您下載下傳最相關的視訊。(這可能不完全是您希望看到的東西,但仍然很有可能。)

官網給出的例子是:

但是我沒有成功,不知道原因。

python代碼批量下載下傳

隻需要把你要下載下傳的視訊放在urls清單裡,path改成你要儲存的位址,即可批量下載下傳。

# !/usr/bin/env python
# -*-coding:utf-8-*-
import sys
import you_get
# urls_list  
urls = ['https://www.bilibili.com/video/BV1iz4y1m7KF?spm_id_from=333.851.b_62696c695f7265706f72745f6469676974616c.48',
        'https://www.bilibili.com/video/BV1qV411t7ma/?spm_id_from=333.788.recommend_more_video.2',
        'https://www.bilibili.com/video/BV1pv411e7Cd/?spm_id_from=333.788.recommend_more_video.5']

def download(url, path):
    sys.argv = ['you-get', '-o', path, url]
    you_get.main()


if __name__ == '__main__':
    # 視訊輸出的位置
    path = '/home/視訊'
    for i in range(len(urls)):
        download(urls[i], path)
           

盡量用指令行運作,編譯器不知道為啥報錯,比如:

python youget.py
           

效果如下:

you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語
you-get下載下傳神器的安裝和使用簡介安裝方法視訊下載下傳在媒體播放器中流式傳輸線上視訊音樂下載下傳圖檔下載下傳自動搜尋下載下傳視訊python代碼批量下載下傳結語

結語

總之還是非常好用的。

以上就是全部分享了,官方連結如下:GitHub