在線視頻爬蟲下載工具youtube_dl安裝及其使用
- github地址 : youtube_dl
利用python管理工具pip安裝
pip install --upgrade youtube-dl
youtube_dl常用命令行介紹
-f, --format FORMAT Video format code, see the "FORMAT
SELECTION" for all the info
--merge-output-format FORMAT If a merge is required (e.g.
bestvideo+bestaudio), output to given
container format. One of mkv, mp4, ogg,
webm, flv. Ignored if no merge is required
-F, --list-formats List all available formats of requested
videos
-a, --batch-file FILE File containing URLs to download ('-' for
stdin)
-o, --output TEMPLATE Output filename template, see the "OUTPUT
TEMPLATE" for all the info
--list-extractors List all supported extractors
輸出文件名模板
Note: on Windows you may need to use double quotes instead of single.
# Download YouTube playlist videos in separate directory indexed by video order in a playlist
$ youtube-dl -o '%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re
# Download all playlists of YouTube channel/user keeping each playlist in separate directory:
$ youtube-dl -o '%(uploader)s/%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' https://www.youtube.com/user/TheLinuxFoundation/playlists
# Download Udemy course keeping each chapter in separate directory under MyVideos directory in your home
$ youtube-dl -u user -p password -o '~/MyVideos/%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s' https://www.udemy.com/java-tutorial/
# Download entire series season keeping each series and each season in separate directory under C:/MyVideos
$ youtube-dl -o "C:/MyVideos/%(series)s/%(season_number)s - %(season)s/%(episode_number)s - %(episode)s.%(ext)s" http://videomore.ru/kino_v_detalayah/5_sezon/367617
輸出文件格式模板
網(wǎng)站上視頻具有的下載格式可以通過youtube-dl -F
查看可下載視頻格式列表
youtube-dl可以根據(jù)參數(shù)配置來確定視頻下載格式
Note: on Windows you may need to use double quotes instead of single.
# Download best mp4 format available or any other best if no mp4 available
$ youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best'
# Download best format available but not better that 480p
$ youtube-dl -f 'bestvideo[height<=480]+bestaudio/best[height<=480]'
# Download best video only format but no bigger than 50 MB
$ youtube-dl -f 'best[filesize<50M]'
# Download best format available via direct link over HTTP/HTTPS protocol
$ youtube-dl -f '(bestvideo+bestaudio/best)[protocol^=http]'
# Download the best video format and the best audio format without merging them
$ youtube-dl -f 'bestvideo,bestaudio' -o '%(title)s.f%(format_id)s.%(ext)s'
開發(fā)者模式使用
youtube_dl在python代碼中使用方式
from __future__ import unicode_literals ## for python2
import youtube_dl
ydl_opts = {}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['http://www.youtube.com/watch?v=BaW_jenozKc'])
ydl_opts 配置可以在YoutubeDL.py中找到,for example
ydl_opts = {
##Download best format available but not better that 720p
'format': 'bestvideo[height<=720]+worstaudio[ext=m4a]/best[height<=720][ext=mp4]',
'merge_output_format': 'mp4',
'outtmpl': './download/%(title)s.%(ext)s',
# # 'postprocessors': [{
# # 'key': 'FFmpegExtractAudio',
# # 'preferredcodec': 'mp3',
# # 'preferredquality': '192',
# # }],
# # 'logger': MyLogger(),
# #'progress_hooks': [my_hook],
}
百度云盤同步工具bypy安裝及其使用
- github地址 : bypy
利用pip安裝bypy
- 通過pip安裝
pip install bypy
bypy對百度云盤授權(quán)
第一次使用需要對百度云進行授權(quán),運行任意命令即可進入百度云盤授權(quán)過程,通過給出url得到百度云盤的授權(quán)碼.
如果需要重置授權(quán),運行bypy -c
即可進入重置授權(quán)
bypy命令行使用
顯示在云盤(程序的)根目錄下文件列表:bypy list
把當(dāng)前目錄同步到云盤:bypy syncup
or bypy upload
把云盤內(nèi)容同步到本地來:bypy syncdown
or bypy downdir /
比較本地當(dāng)前目錄和云盤(程序的)根目錄:bypy compare
bypy代碼運行
在python代碼中運行bypy
import bypy
by = bypy.ByPy()
by.syncup(fromdir,todir)