爬取全网资源 you-get大法使用详解

2021-01-23 12:57:18 浏览数 (1)

文章目录

一、简介

You-Get 乃一小小哒命令行程序,提供便利的方式来下载网络上的媒体信息。

为什么你要好好的用you-get:

  • 你欢喜于互联网上的富媒体内容,并为个人寻欢而储存
  • 你喜悦观看的视频,然而不得保存;对个人设备无从控制,此乃违背开放互联网之行为
  • 你寻求解脱于闭源软件或 JavaScript 代码,并禁止 Flash 运行
  • 你为黑客精神与自由软件而欣喜

you-get大法之功用:

  • 下载流行网站之音视频,例如YouTube、Youku、TED、土豆以及更多
  • 于您心仪的媒体播放器中观看在线视频,脱离浏览器与广告
  • 下载您喜欢的网页上的图片
  • 下载任何非HTML内容,例如二进制文件

官方文档传送门:https://github.com/soimort/you-get/wiki/中文说明

二、安装

you-get的官方版本通过 PyPI 分发, 可从 PyPI 镜像中通过 pip 包管理器进行安装:

代码语言:txt复制
pip install you-get -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

官方文档中强烈推荐安装上FFmpeg,下载链接如下:

FFmpeg下载链接:https://www.ffmpeg.org/download.html

下载到本地后,配置环境变量,在命令行能正常使用,说明安装成功。

三、下载B站视频

以下载小姐姐跳舞视频为例:

当观赏感兴趣的视频时,您可以使用 --info/-i 以查看所有可用画质与格式:

  • 标有 DEFAULT 为默认画质,如果希望保存为其他格式(mp4),可以使用 -i 查看所有可用画质与格式给出的其他选项进行下载
  • 使用其他选项进行下载:download-with(之后的):you-get --format=。。。 URL
  • 使用 --output-dir/-o 设定路径,–output-filename/-O 设定输出文件名
  • 下载过程中可以使用 Ctrl C 暂停下载
代码语言:txt复制
you-get -o D:test --format=dash-flv https://www.bilibili.com/video/BV1me411W7J5

速度嗖嗖的,视频下载到了本地我们设置的路径下:

Nice,小五感觉很不错,但上面那种方法下载这个视频,视频和音频分开了,我们可以换一种格式选项再下载:

代码语言:txt复制
# 视频音频在一块儿
you-get -o D:test --format=flv https://www.bilibili.com/video/BV1me411W7J5

在 Python 中使用:

代码语言:txt复制
# -*- coding: UTF-8 -*-
"""
@File    :demo1.py
@Author  :叶庭云
@CSDN    :https://yetingyun.blog.csdn.net/
"""
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()

下面举例下载整个视频选集,【老友记第一季】全网最硬核美剧学习笔记丨英语口语丨英语听力丨背单词。

代码语言:txt复制
you-get -o D:test --playlist https://www.bilibili.com/video/BV1RE411C7t5?from=search&seid=12600458593644846501

运行效果如下:

可用的参数:

代码语言:txt复制
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. 优酷短视频

视频链接:https://v.youku.com/v_show/id_XMzczOTU3MjI4OA==.html

代码语言:txt复制
you-get -o D:test https://v.youku.com/v_show/id_XMzczOTU3MjI4OA==.html

2. 腾讯短视频

电影《神话》中,金喜善山顶跳舞那段,惊艳我许多年!(https://v.qq.com/x/page/y0898b4ah7r.html)

代码语言:txt复制
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. 央视网视频

视频链接:https://v.cctv.com/2021/01/11/VIDE8Fu1hm5p7teBosh1L0eU210111.shtml?spm=C90324.PE6LRxWJhH5P.EPZudTwNMBDs.1

代码语言:txt复制
you-get -o D:test https://v.cctv.com/2021/01/11/VIDE8Fu1hm5p7teBosh1L0eU210111.shtml?spm=C90324.PE6LRxWJhH5P.EPZudTwNMBDs.1

4. 凤凰网视频

视频链接:http://v.ifeng.com/c/82whIiWxH1S

代码语言:txt复制
you-get -o D:test http://v.ifeng.com/c/82whIiWxH1S

5. 爆米花视频

视频链接:https://video.baomihua.com/v/48815509

代码语言:txt复制
you-get -i https://video.baomihua.com/v/48815509
you-get -o D:test https://video.baomihua.com/v/48815509

6. 搜狐视频

视频链接:https://tv.sohu.com/v/MjAxNTA5MjcvbjQyMjIxNzc5Ni5zaHRtbA==.html

代码语言:txt复制
you-get -o D:test https://tv.sohu.com/v/MjAxNTA5MjcvbjQyMjIxNzc5Ni5zaHRtbA==.html

搜狐视频,这个网站用 you-get 下载视频挺不错,像电视剧伪装者也可以直接下载下来,本地打开播放就没广告。

经过测试也发现,以上网站下载效果很好,而有些网站用 you-get 下载视频会失败,可能是网络原因或者其他。

作者:叶庭云 微信公众号:修炼Python CSDN:https://yetingyun.blog.csdn.net/ 本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。 觉得文章对你有帮助、让你有所收获的话,期待你的点赞呀,不足之处,也可以在评论区多多指正。

0 人点赞