分享好友 站长动态首页 网站导航

分享一个程序员下载在线视频的思路如何写

网友发布 2022-08-13 19:33 · 头闻号项目分享

最近因为沉迷韩国小姐,每天都跑去看韩国小姐的VLOG,但是多国服务器的在线视频确实卡了,于是想到下载视频再看,但是原来的网站没有提供下载链接,于是绞尽脑汁才有了下面这一幕。

很多人都有这样的感觉,当你真的对某件事感兴趣时,没有什么能阻止你。我也是,所以在网上搜了很多资料,找到了解决办法。

第一个想法是用浏览器抢包找到这个网站的视频包。令人惊讶的是,我发现网络视频的文件格式居然是这样的。

有一个里面什么都没有的qoe套餐。我认为这是被丢弃的数据,或者是保持联系的无用手段,与我们将要做的事情无关。

重点是“xxxx-随机数-0000x.ts”,用红框标出。这是我们要下载的视频文件,这里不是mp4或者mkv格式。

Ts是日本高清相机拍摄的一种打包格式,称为MPEG2-TS。ts“传输流”的缩写。MPEG-2 TS格式的特点是要求视频流的任何一段都可以独立解码。

独立解码然后我明白了。网站将视频切片切割成N. ts文件,然后一点一点返回给浏览器。然后我估计用下载软件下载电影也是用同样的原理!再看ts文件,发现都有一个规律,从后缀0开始,依次递增。但是根据不同的视频,它的最大文件数也是不同的。那么我怎么知道这个视频里有多少个包裹呢?

通过页面直接跳转到片尾,这样我们就知道了这个视频整个ts片集的终点。因为起点都是0,那么我们知道可以下载这一套。

但是还有一个很重要的点,就是如何选择视频的清晰度?

经过实验发现,这个网站的视频定义是文件的前缀。实验的由来很简单。切换不同的定义,观察ts文件名的变化。

然后看后面的“拼接”参数。ts文件。通常表示用户的一些属性,如IP地址、浏览器内核信息等。,这是不需要注意的。

让我们尝试下载这些ts文件。

第一步:下载python程序和PyCharm编程软件。

第二部分:调整PyCharm字体、背景、快捷键等。

第3部分:开始写程序。

其实很久没用python了,很多东西都记住了。我临时在网上找到的。首先导入几个要用的包,然后用def定义方法。方法相对简单。只需调用浏览器打开selenium包中要用webdriver下载的文件的地址。浏览器有这样一个特性,如果你请求返回的不是html页面,它就会下载,这样就可以自动下载了。

但需要注意的是,根据ts分片的设定规则,建立循环动态修改文件号和重拼接参数,也有线程等待时间。下载文件后,您应该立即关闭浏览器。这时候你必须保证文件已经下载完了再关闭浏览器,所以每个线程的等待时间是5秒。你要根据目标下载速度自己设置。最后,您可以通过循环运行程序来下载所有ts文件。

补充:。ts文件可以单独播放,但是一个片段只有5秒长,需要使用ts集成工具拼接成一个完整的mp4视频。

选择一个浏览器,一般是Google Chrome,但是程序运行的时候会一直在屏幕前打开和关闭。打开关闭很烦,要用无头浏览器在后台运行。有些网站有反爬虫机制,还是需要你自己想办法解决。

请关注我,我会每天分享有趣的文章和视频。

免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报

举报
反对 0
打赏 0
更多相关文章

评论

0

收藏

点赞