百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

包搞定,解决全网 99% 视频下载问题

csdh11 2024-12-23 09:25 37 浏览


导读



总会有那么一些视频和电影,是我们想保存到本地反复观摩的。

今天我们就来好好地聊一聊视频的下载方法,预计能够解决
99% 的视频下载问题。

而且绝对简单,隔壁爱下象棋的老大爷也能学会。





01


视频下载的原理


首先,我们来讲一讲视频下载的原理。

细心的话,你会发现,有时候我们下载下来的视频是分段的,是网站为了防止别人下载,故意这么做的吗?

不是的!

将视频分成多个片段,为的是解决
视频的缓冲问题

它可以让我们不用等到整个视频都缓冲好了才开始播放,否则就等于下载了整个视频。

而这个做法就是苹果公司推出的
HLS 协议(HTTP Live Streaming)。


HLS 协议在客户端分为两个部分:

一是 ts 视频文件。

它的特点是可以在视频的任意位置都可以独立解码,再加上视频被分成了多个片段,所以现在大多数视频网站,我们可以点到那里就播那里。

二是 m3u8 文件。

m3u8 文件是一个文本文件,它记录着要播放什么样的 ts 视频文件。也就是说,m3u8 文件其实就相当于是一个“播放列表”。


所以,下载视频的关键也是这两个问题:

一是如何将 ts 分段视频合并在一起。

这个很好办,业界普通采用的方法是 FFmpeg 开源项目。如果你下载的视频是完整的,那么说明软件已经内置了 FFmpeg

二是如何获取和解析 m3u8 文件

这个比较复杂,也是视频下载关键中的关键,下面我总结了一些解析 m3u8 文件的方法。





02


浏览器拓展法


第一种方法是使用浏览器拓展,比如知名视频下载拓展 Video DownloadHelper


但由于受浏览器沙盒的限制,
拓展对视频的解析能力有限,而且遇到稍长的视频也会分成多个视频,用户需要手动合并这些视频。





03


嗅探工具法


如果想要有强大的视频解析能力,那就需要用视频嗅探工具了。

比如知名下载工具 IDM,它不但支持多线程下载,而且还内置了“视频嗅探功能”,在有视频的地方就会显示一个“浮动下载框”,点击就可以一键下载。


Mac 下也有类似的软件
NDM,它不但支持 Mac 和 Windows 多个平台,而且还是免费的。


但一些网站或者网页会
对 IDM / NDM 这类软件进行屏蔽,所以会出现浮动下载按钮无法显示的问题。





04


解析工具法


这个时候就需要用到专门的“视频解析”工具了。

这其中做得最好的当属 Mac 下的软件 Downie 了,它不但界面精美,而且操作还简单,只需要复制粘贴网页地址就可以一键下载。


Windows 下也有类似的软件,叫做
Annie

为什么叫 Annie(安妮 / 女孩名)呢?是因为它要对标的是 Mac 平台下的 Downie (唐尼 / 男孩名)。

其实在此之前,已经有过像 you-get , youtube-dl 这样解析引擎,只不过它们对国内视频网站的支持并不太好,所以就有了 Annie 这个项目。


网友“愚无尽”觉得 Annie 的使用方法太麻烦,然后制作了
一键部署工具,有了图形化界面的 Annie 就可以媲美 Downie 了,而且它还是免费的。



使用方法:

1、回复关键字 i14 获取安装包。
2、使用管理员身份运行“
安装.bat”。
3、打开“
视频下载工具.exe”,复制网页地址,粘贴即可下载。





05


网页解析法


还有一种在线解析的方法,也就是相当于 Downie 的在线版。

比如网站 https://www.parsevideo.com 就支持解析大多数的视频网站,同样只需要输入网页地址就可以下载。


但这类在线视频解析网站,通常会因为版权的问题而停止服务,而且还会有
使用次数的限制

所以,在线解析的优势在于短视频解析,特别是对抖音、快手视频的无水印下载有特别帮助。

下面我精选了一批优秀的网页解析网站,你可以回复关键字
i14 来获取。





05


视频下载方法总结


最后,我们来总结一下视频下载的方法。

1、浏览器拓展法。

使用 Video DownloadHelper 的成功率并不高,可以不用考虑。

2、嗅探工具法。

使用 IDM 或 NDM,点击浮动按钮就可以一键下载,但一些网站或网页会屏蔽这类嗅探工具。

3、解析工具法。

使用 Downie 或 Annie,复制粘贴网页地址就可以一键下载,但对小众网站无能为力。

4、网页解析法。

使用 parsevideo.com 的成功率不错,但有使用次数的限制,主要还是用于 VIP 视频解析短视频的去水印下载。


所以,更加合理的下载方案是:

1、优先使用 IDM 或 NDM 来下载。

2、如遇到浮动按钮无法显示的情况,那么就用 Annie 或 Downie 来下载。

3、如遇到无法下载的情况,那么就要用专门的 m3u8 下载器 来下载。

比如一些视频的链接为 .m3u8 后缀,使用 IDM 或 NDM 来下载时会出现“没有下载权限”的问题。

例如网站:
https://www.enaea.edu.cn/other/xyjs/202.html


这时就要复制该“
下载链接”,然后用专门的 m3u8 下载器来下载。

Mac 下的 Downie 本身就支持 m3u8 链接的下载,所以只需要粘贴到 Downie 上就可以下载了。


而 Windows 下的 Annie 不支持,所以就需要用
m3u8 Downloader 来下载了,推荐这个项目:

https://github.com/nilaoda/N_m3u8DL-CLI


又或者使用“
在线 m3u8 解析工具”来下载,同样粘贴网页地址就可以了。

http://blog.luckly-mjw.cn/tool-show/m3u8-downloader/index.html


Mac 方案总结:
NDM + Downie

Windows 方案总结:
IDM 或 NDM + Annie + m3u8 Downloader

使用上面的方法,已经可以解决 99% 的视频下载问题了。

如果还是无法下载,那么就得用最后的办法——“录屏”了,保证解决 100% 的视频下载问题。




结尾



最后,如果你想在视频下载这个问题上省心、省力、省时间,推荐购买正版 IDM 和 Downie

我们经常看到 IDM / Downie 提示升级,但更新后又看不到有什么新变化,原因是它们更新了算法,视频解析的能力更加的强大了

所以购买正版 IDM / Downie,不但是购买了软件本身,而且还购买了后续的维护更新。

使用下面的链接购买,可以领取优惠卷减 5 元

IDM:


Downie:

相关推荐

Github霸榜的SpringBoot全套学习教程,从入门到实战,内容超详细

前言...

SpringBoot+LayUI后台管理系统开发脚手架

源码获取方式:关注,转发之后私信回复【源码】即可免费获取到!项目简介本项目本着避免重复造轮子的原则,建立一套快速开发JavaWEB项目(springboot-mini),能满足大部分后台管理系统基础开...

Spring Boot+Vue全栈开发实战,中文版高清PDF资源

SpringBoot+Vue全栈开发实战,中文高清PDF资源,需要的可以私我:)SpringBoot致力于简化开发配置并为企业级开发提供一系列非业务性功能,而Vue则采用数据驱动视图的方式将程序...

2021年超详细的java学习路线总结—纯干货分享

本文整理了java开发的学习路线和相关的学习资源,非常适合零基础入门java的同学,希望大家在学习的时候,能够节省时间。纯干货,良心推荐!第一阶段:Java基础...

探秘Spring Cache:让Java应用飞起来的秘密武器

探秘SpringCache:让Java应用飞起来的秘密武器在当今快节奏的软件开发环境中,性能优化显得尤为重要。SpringCache作为Spring框架的一部分,为我们提供了强大的缓存管理能力,让...

3,从零开始搭建SSHM开发框架(集成Spring MVC)

目录本专题博客已共享在(这个可能会更新的稍微一些)https://code.csdn.net/yangwei19680827/maven_sshm_blog...

Spring Boot中如何使用缓存?超简单

SpringBoot中的缓存可以减少从数据库重复获取数据或执行昂贵计算的需要,从而显著提高应用程序的性能。SpringBoot提供了与各种缓存提供程序的集成,您可以在应用程序中轻松配置和使用缓...

我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊

接下来你看到的将是全网最详细的Java知识点总结,全文分为三大部分:Java基础、Java框架、Java+云数据小编将为大家仔细讲解每大部分里面的详细知识点,别眨眼,从小白到大佬、零基础到精通,你绝...

1,从零开始搭建SSHM开发框架(环境准备)

目录本专题博客已共享在https://code.csdn.net/yangwei19680827/maven_sshm_blog1,从零开始搭建SSHM开发框架(环境准备)...

做一个适合二次开发的低代码平台,把程序员从curd中解脱出来-1

干程序员也有好长时间了,大多数时间都是在做curd。现在想做一个通用的curd平台直接将我们解放出来;把核心放在业务处理中。用过代码生成器,在数据表设计好之后使用它就可以生成需要的controller...

设计一个高性能Java Web框架(java做网站的框架)

设计一个高性能JavaWeb框架在当今互联网高速发展的时代,构建高性能的JavaWeb框架对于提升用户体验至关重要。本文将从多个角度探讨如何设计这样一个框架,让我们一起进入这段充满挑战和乐趣的旅程...

【推荐】强&牛!一款开源免费的功能强大的代码生成器系统!

今天,给大家推荐一个代码生成器系统项目,这个项目目前收获了5.3KStar,个人觉得不错,值得拿出来和大家分享下。这是我目前见过最好的代码生成器系统项目。功能完整,代码结构清晰。...

Java面试题及答案总结(2025版持续更新)

大家好,我是Java面试分享最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试场景题及答案。...

Java开发网站架构演变过程-从单体应用到微服务架构详解

Java开发网站架构演变过程,到目前为止,大致分为5个阶段,分别为单体架构、集群架构、分布式架构、SOA架构和微服务架构。下面玄武老师来给大家详细介绍下这5种架构模式的发展背景、各自优缺点以及涉及到的...

本地缓存GuavaCache(一)(guava本地缓存原理)

在并发量、吞吐量越来越大的情况下往往是离不开缓存的,使用缓存能减轻数据库的压力,临时存储数据。根据不同的场景选择不同的缓存,分布式缓存有Redis,Memcached、Tair、EVCache、Aer...