天秀!一行代码,爬尽全网资源?
这是「进击的Coder」的第 352 篇技术分享
作者:叶庭云
来源:凹凸数据
阅读本文大概需要 11 分钟。
你欢喜于互联网上的富媒体内容,并为个人寻欢而储存 你喜悦观看的视频,然而不得保存;对个人设备无从控制,此乃违背开放互联网之行为 你寻求解脱于闭源软件或 JavaScript 代码,并禁止 Flash 运行 你为黑客精神与自由软件而欣喜
下载流行网站之音视频,例如 YouTube、Youku、TED、土豆以及更多 于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告 下载您喜欢的网页上的图片 下载任何非 HTML 内容,例如二进制文件
安装
pip install you-get -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
下载B站视频
标有 DEFAULT 为默认画质,如果希望保存为其他格式(mp4),可以使用 -i 查看所有可用画质与格式给出的其他选项进行下载
使用其他选项进行下载:download-with(之后的):you-get --format=。。。URL
使用 --output-dir/-o 设定路径,--output-filename/-O 设定输出文件名
下载过程中可以使用 Ctrl+C 暂停下载
you-get -o D:\test --format=dash-flv https://www.bilibili.com/video/BV1me411W7J5
# 视频音频在一块儿
you-get -o D:\test --format=flv https://www.bilibili.com/video/BV1me411W7J5
import sys
from you_get import common as you_get # 导入you-get库
# 设置下载目录
directory = r'D:\test'
# 要下载的视频地址
url = 'https://www.bilibili.com/video/BV1me411W7J5'
# 传参数
sys.argv = ['you-get', '-o', directory, '--format=flv', url]
you_get.main()
you-get -o D:\test --playlist https://www.bilibili.com/video/BV1RE411C7t5?from=search&seid=12600458593644846501
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:PASSWORD@HOST:PORT, --socks-proxy HOST:PORT or USERNAME:PASSWORD@HOST:PORT
Use an SOCKS5 proxy for downloading
如果 you-get 出现问题,不要惊慌. (是的,问题一直存在!),看看是不是在 https://github.com/soimort/you-get/wiki/Known-Bugs里面,搜索 开放Issue,如果没人报告,开个新issue,加上详细的命令行输出。 当然,VIP、付费的那些视频一般还是下载不了的 官网文档指出:如果你使用本软件进行盗版行为,或者非法行径,作者不为你负责,我们仅提供代码,如何使用请自行考虑。
下载其他网站视频
1. 优酷短视频
you-get -o D:\test https://v.youku.com/v_show/id_XMzczOTU3MjI4OA==.html
2. 腾讯短视频
you-get -i https://v.qq.com/x/page/y0898b4ah7r.html
you-get -o D:\test https://v.qq.com/x/page/y0898b4ah7r.html
3. 央视网视频
you-get -o D:\test https://v.cctv.com/2021/01/11/VIDE8Fu1hm5p7teBosh1L0eU210111.shtml?spm=C90324.PE6LRxWJhH5P.EPZudTwNMBDs.1
4. 凤凰网视频
you-get -o D:\test http://v.ifeng.com/c/82whIiWxH1S
5. 爆米花视频
you-get -i https://video.baomihua.com/v/48815509
you-get -o D:\test https://video.baomihua.com/v/48815509
6. 搜狐视频
you-get -o D:\test https://tv.sohu.com/v/MjAxNTA5MjcvbjQyMjIxNzc5Ni5zaHRtbA==.html
有一起去看小姐姐的吗
评论