网页视频抓取软件 格式工厂(40行代码教你爬遍小视频网站,先批量下载后仔细观看,岂不美哉!)
优采云 发布时间: 2021-12-16 15:21网页视频抓取软件 格式工厂(40行代码教你爬遍小视频网站,先批量下载后仔细观看,岂不美哉!)
/1 简介/
还在为在线看小视频缓存慢而发愁吗?您是否还在为想重温优秀作品却找不到资源而苦恼?别慌,让python帮你解决,40行代码教你爬取小视频网站,先分批下载仔细看,不好看!
/2 整理思路/
这种网站一般都是一样的。本文以凤凰新闻视频网站为例,通过后推方式向大家展示如何通过流量分析获取视频下载的url,然后批量下载。
/3 操作步骤/
/3.1 分析网站,找出网页变化的规律/
1、 首先找到网页。该网页的详细信息如下图所示。
2、这个视频网站分为人物、娱乐、艺术等不同类型。本文以体育板块为例,下拉至底部,如下图所示。
3、根据上图的结果,我们可以发现网站是一个动态网页。打开浏览器内置的流量分析器,点击加载更多,查看网页变化的规律。第一个是请求的 URL 和返回的结果如下图所示。标记为页码,此时为第三页。
4、 返回的结果收录视频标题、网页url、guid(相当于每个视频的logo,方便后续跟进)等信息,如下图所示。
5、 每个网页收录24个视频,如下图打印出来。
/3.2 查找视频网页地址的规则/
1、 首先打开流量分析器,播放视频抓包,找到几个mp2t文件,如下图。
2、 我一一找到了它们的网址,并存入一个文本文件中,以查找它们之间的规则,如下图所示。
3、 你注意到这种模式了吗?URL中的p26275262-102-9987636-172625参数是视频的guid(上面得到的),只有range_bytes参数变化,从0到6767623。显然这是视频的大小,视频是分段合成。找到这些规则后,我们需要继续挖掘视频地址的来源。
/3.3 找到视频的原创下载地址/
1、 首先考虑一个问题,视频地址从何而来?一般情况下,首先检查视频页面上是否有。如果没有,我们将在流量分析器中查找第一个分段视频。必须有某个 URL 返回此信息。很快,我在一个 vdn.apple.mpegurl 文件中找到了下图。
2、 太惊喜了,这不是我们要找的信息吗?我们来看看它的url参数,如下图所示。
3、上图中的参数看起来很多,但不要害怕。还是用老办法,先查网页有没有,如果没有就在流量分析器里找。努力是有回报的。我找到了下面的图片。
4、 其url如下图所示。
5、仔细找规则,发现唯一需要改的就是每个视频的guid。这第一步已经完成。另外,返回的结果中除了vkey之外,都收录了上面的所有参数,而且这个参数是最长的,我该怎么办?
6、不要着急,如果这个参数不起作用,删除vkey并尝试。果然,实在不行。现在整个过程已经很顺利了,现在可以按下代码了。
/3.4 代码实现/
1、 代码中设置多线程下载,如下图,其中页码可以自行修改。
2、 解析返回参数,为json格式,使用json库进行处理,如下图。通过分析,我们可以得到每个视频的标题、网页url和guid。
3、模拟请求获取Vkey以外的参数,如下图。
4、 使用上一步中的参数进行模拟请求,获取收录分段视频的信息,如下图所示。
5、 将分割后的视频合并,保存为1个视频文件,并以标题命名,如下图。
/3.5 效果展示/
1、 程序运行后,我们可以在本地文件夹中看到网页上的视频飞溅,如下图。接下来妈妈再也不用担心找不到我喜欢的视频了,真香!
当然,如果你想更直观,你可以在代码中添加尺寸测量信息。您可以自己手动设置。
/4 总结/
本文主要基于Python网络爬虫,使用40行代码,针对小视频网页,批量获取网络视频到本地。该方法简单易行,行之有效。欢迎您试用。如需获取本文代码,请访问/cassieeric/python_crawler/tree/master/little_video_crawler获取代码链接。觉得还不错的话记得给个star哦。