有些视频网站不允许我们下载视频,我们可以使用浏览器的插件去抓包。
以谷歌浏览器为例,可以添加“猫抓”插件。(当然谷歌浏览器要有梯子)。添加的方式见下图:
然后你就会看到右上角控件栏里面有只小猫。打开一个你想下载视频的网页,播放视频,控件就自动开始抓包。
下载下来之后会发现有很多ts文件,其实这是可以播放的,并且按照先后顺序命名。我们可以使用python将这些文件连接起来。
import os
new_file = "new.ts"
f = open(new_file, 'wb+')
for i in range(278):
file_path = '../video/mda-hftrty1gjfbqhmsp.m3u8.{}.ts'.format(i)
print(file_path)
for line in open(file_path, 'rb'):
f.write(line)
f.flush()
f.close()
这里,有278个ts文件(编号从0到277)都放在video文件夹下,这里的路径可能要修改成自己的。然后你就会得到一个叫做“new.ts”的大视频。
关于转码
我们也可以将ts文件转成mp4,当然有些软件或网页也可以实现,但是当视频量比较大的时候会有限制。我们可以使用ffmpeg这个python包实现。
打开你的conda虚拟环境,安装ffmpeg:
conda install ffmpeg
就可以安装。
安装好后,在命令行输入以下命令即可自动开始转换,非常迅速:
(py3.6) E:\临时存储\combine>ffmpeg -i my_video.ts -c copy my_video.mp4
就可以把my_video.ts转成my_video.mp4.
以上就是下载网络视频的一种办法。
更多内容欢迎关注python生活