python爬蟲8——下載視訊:you-get工具
由於博主經常性會學習一些視訊教程,除了自己下的外,就很像把公司買的視訊也下下來觀摩觀摩。先來一個軟體,叫you-get的包。
一、you-get說明
You-Get 乃一小小噠命令列程式,提供便利的方式來下載網路上的媒體資訊。
利用you-get下載這個網頁的視訊:
$ you-get http://www.fsf.org/blogs/rms/20140407-geneva-tedx-talk-free-software-free-society Site: fsf.org Title: TEDxGE2014_Stallman05_LQ Type: WebM video (video/webm) Size: 27.12 MiB (28435804 Bytes) Downloading TEDxGE2014_Stallman05_LQ.webm ... 100.0% ( 27.1/27.1 MB) ├████████████████████████████████████████┤[1/1] 12 MB/s
為什麼你要好好的用You-get:
- 你歡喜於網際網路上的富媒體內容,併為個人尋歡而儲存
- 你喜悅觀看的視訊,然而不得儲存;對個人裝置無從控制,此乃違背開放網際網路之行為
- 你尋求解脫於閉源軟體或JavaScript程式碼,並禁止Flash執行
- 你為黑客精神與自由軟體而欣喜
you-get之功用:
- 下載流行網站之音視訊,例如YouTube, Youku, Niconico,以及更多. (檢視完整支援列表)
- 於您心儀的媒體播放器中觀看線上視訊,脫離瀏覽器與廣告
- 下載您喜歡的網頁上的圖片
- 下載任何非HTML內容,例如二進位制檔案
使用Python程式設計?敬請檢視 原始碼 並fork!
1,安裝
緒論
以下乃必要依賴,需要單獨安裝,除非於Windows下使用預包裝包:
選項 1: 通過pip安裝
you-get之官方版本通過PyPI分發, 可從PyPI映象中通過pip 包管理器安裝. 須知您務必使用版本3的 pip:
$ pip3 install you-get
選項 2: 使用預裝包(僅供Windows)
exe (單獨檔案) 或 7z (包括所有依賴) 可從https://github.com/soimort/you-get/releases/latest 下載.
選項 3: 於GitHub下載
您可選擇穩定版 (與PyPI最新版等同) 或 開發版 (更多的熱補丁與不穩定功能)的you-get. 解壓並將含有you-get的目錄加入PATH.
或者, 執行
$ make install
以安裝you-get 於永久路徑.
選項 4: Git clone
即使您不常使用Python,作為開發者,也請使用此方法。
$ git clone git://github.com/soimort/you-get.git
將目錄加入 PATH, 或執行 make install 以安裝you-get 於永久路徑.
升級
考慮到 you-get 安裝方法之差異, 請使用:
$ pip3 install --upgrade you-get
或下載最新更新:
$ you-get https://github.com/soimort/you-get/archive/master.zip
2,相關引數
(1)檢視當前視訊的清晰度和格式
you-get -i http://v.youku.com/v_show/id_XMTQ2NzQyMjY1Ng.html
部分引數:
site: 優酷 (Youku)
title: 染
streams: # Available quality and codecs
[ DEFAULT ] _________________________________
- format: mp4hd2
container: mp4
video-profile: 超清
size: 13.0 MiB (13621766 bytes)
m3u8_url: http://pl-ali.youku.com/playlist/m3u8?vid=XMTQ2NzQyMjY1Ng&t
ype=hd2&ups_client_netip=da1ac813&utid=JJNuFHVaZA8CAdoayBNZ94Bt&ccode=0516&psid=
f2dc9ab6eaf734e76a8de89579b4b6cd&duration=90&expire=18000&drm_type=1&drm_device=
0&ups_ts=1541907752&onOff=0&encr=0&ups_key=8422ef342986f2d4a07ccb8dcc6ab3cf
# download-with: you-get --format=mp4hd2 [URL]
(2)選擇需要下載的清晰度及格式
you-get --format=hd2 http://v.youku.com/v_show/id_XMTQ2NzQyMjY1Ng.html
(3) You-Get 播放命令
you-get -p PotPlayerMini64.exe http://v.youku.com/v_show/id_XMTY0MTA4ODM1Mg==.html
(4).暫停下載與繼續下載
1.暫停下載:和Linux一樣,按Ctrl+C可以中斷命令,下載目錄下會儲存有一個以.download為副檔名的快取檔案。
2.繼續下載:重新執行下載任務,如果下載目錄下有上次下載儲存的快取檔案,則繼續上次下載進度。
3.強制重新下載(即使下載完成也會重新寫入):
you-get -f http://www.meipai.com/media/437971164
(5)下載視訊列表中的所有視訊
優酷等網站會提供視訊列表,而 You-Get 可以通過視訊列表進行批量下載。
you-get http://www.youku.com/playlist_show/id_25917721.html
(6)設定輸出檔名或路徑
使用--output-dir/-o 設定路徑, --output-filename/-O 設定輸出檔名:
you-get -o ~/Videos -O zoo.webm 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
(8)代理設定
使用 --http-proxy/-x為you-get設定HTTP代理:
$ you-get -x 127.0.0.1:8087 'https://www.youtube.com/watch?v=jNQXAC9IVRw'
(9)載入cookie
並非所有視訊可供任何人觀看。如果需要登入以觀看 (例如, 私密視訊), 可能必須將瀏覽器cookie通過--cookies/-c 載入入 you-get.
(10)可通過輸入you-get或者you-get -h檢視幫助資訊,如
C:\Users\Administrator>you-get -h
you-get: version 0.4.1164, a tiny downloader that scrapes the web.
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
-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
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, --socks-proxy HOST:PORT
Use an SOCKS5 proxy for downloading
注意:
目前我們支援兩種cookie格式:Mozilla cookies.sqlite 和 Netscape cookies.txt.
部分網站在中國大陸可能無法訪問,如果想正常訪問這些網站,可以去問問神奇海螺。
支援網站
網站 URL 視訊? 影象? 音訊?
YouTube https://www.youtube.com/ ✓
Twitter https://twitter.com/ ✓ ✓
VK http://vk.com/ ✓
Vine https://vine.co/ ✓
Vimeo https://vimeo.com/ ✓
Vidto http://vidto.me/ ✓
Veoh http://www.veoh.com/ ✓
Tumblr https://www.tumblr.com/ ✓ ✓ ✓
TED http://www.ted.com/ ✓
SoundCloud https://soundcloud.com/ ✓
Pinterest https://www.pinterest.com/ ✓
MusicPlayOn http://en.musicplayon.com/ ✓
MTV81 http://www.mtv81.com/ ✓
Mixcloud https://www.mixcloud.com/ ✓
Metacafe http://www.metacafe.com/ ✓
Magisto http://www.magisto.com/ ✓
Khan Academy https://www.khanacademy.org/ ✓
JPopsuki TV http://www.jpopsuki.tv/ ✓
Internet Archive https://archive.org/ ✓
Instagram https://instagram.com/ ✓ ✓
Heavy Music Archive http://www.heavy-music.ru/ ✓
Google+ https://plus.google.com/ ✓ ✓
Freesound http://www.freesound.org/ ✓
Flickr https://www.flickr.com/ ✓ ✓
Facebook https://www.facebook.com/ ✓
eHow http://www.ehow.com/ ✓
Dailymotion http://www.dailymotion.com/ ✓
CBS http://www.cbs.com/ ✓
Bandcamp http://bandcamp.com/ ✓
AliveThai http://alive.in.th/ ✓
interest.me http://ch.interest.me/tvn ✓
755
ナナゴーゴー http://7gogo.jp/ ✓ ✓
niconico
ニコニコ動畫 http://www.nicovideo.jp/ ✓
163
網易視訊
網易雲音樂 http://v.163.com/
http://music.163.com/ ✓ ✓
56網 http://www.56.com/ ✓
AcFun http://www.acfun.tv/ ✓
Baidu
百度貼吧 http://tieba.baidu.com/ ✓ ✓
爆米花網 http://www.baomihua.com/ ✓
bilibili
嗶哩嗶哩 http://www.bilibili.com/ ✓
Dilidili http://www.dilidili.com/ ✓
豆瓣 http://www.douban.com/ ✓
鬥魚 http://www.douyutv.com/ ✓
鳳凰視訊 http://v.ifeng.com/ ✓
風行網 http://www.fun.tv/ ✓
iQIYI
愛奇藝 http://www.iqiyi.com/ ✓
激動網 http://www.joy.cn/ ✓
酷6網 http://www.ku6.com/ ✓
酷狗音樂 http://www.kugou.com/ ✓
酷我音樂 http://www.kuwo.cn/ ✓
樂視網 http://www.letv.com/ ✓
荔枝FM http://www.lizhi.fm/ ✓
秒拍 http://www.miaopai.com/ ✓
MioMio彈幕網 http://www.miomio.tv/ ✓
痞客邦 https://www.pixnet.net/ ✓
PPTV聚力 http://www.pptv.com/ ✓
齊魯網 http://v.iqilu.com/ ✓
騰訊視訊 http://v.qq.com/ ✓
阡陌視訊 http://qianmo.com/ ✓
Sina
新浪視訊
微博秒拍視訊 http://video.sina.com.cn/
http://video.weibo.com/ ✓
Sohu
搜狐視訊 http://tv.sohu.com/ ✓
天天動聽 http://www.dongting.com/ ✓
Tudou
土豆 http://www.tudou.com/ ✓
蝦米 http://www.xiami.com/ ✓
陽光衛視 http://www.isuntv.com/ ✓
音悅Tai http://www.yinyuetai.com/ ✓
Youku
優酷 http://www.youku.com/ ✓
戰旗TV http://www.zhanqi.tv/lives ✓
央視網 http://www.cntv.cn/ ✓
3,載入cookie下載視訊