python多线程爬取视频(python多线程爬取图片)

小编:小丢 更新时间:2022-09-01

爬取时间2022/8/15

用于爬取的电脑配置:16内存,中端CPU12核.Windows系统

python版本3.8.5

省略了从主网页一步步爬取链接挖掘到m3u8文件的过程,直接以能下载到视频的m3u8文件开始.

注:>>>>多线程爬取视频见代码1

>>>>> os模块合成视频文件及其最大合成数见代码2

代码如下

python多线程爬取视频(python多线程爬取图片)

代码1--下载视频


python多线程爬取视频(python多线程爬取图片)

代码2--用os合成ts和mp4文件


代码1的运行结果

python多线程爬取视频(python多线程爬取图片)

结果1--pycharm的显示结果



python多线程爬取视频(python多线程爬取图片)

结果2--文件管理器中的结果

代码2的运行结果

python多线程爬取视频(python多线程爬取图片)

结果1--文件管理器中的结果


python多线程爬取视频(python多线程爬取图片)

结果2--最后合成的视频-左(网站视频)-右(爬取合成后的视频)

----------------------------------------------

代码1及其结果可以看到(及额外说明):

1>创建了40个线程数,

2>爬取3586个ts文件,大小为545M

3>共花费210秒的时间

4>爬取期间电脑CPU使用率一直维持在13%-18%左右,内存使用率无变化


用单程爬取这个视频的话,需要整整两个小时,(亲测)

用异步协程爬取这个视频的话,个人估计60-70秒左右.(亲测用异步十秒不到就爬了700多ts文件,结果被网站屏蔽了)

----------------------------------------------

代码2及其结果可以看到(及额外说明):

1>反复手动修改后的代码,不想修改可以弄循环一次性解决

2>每次取650个ts文件合并,

3>合并成了第1-6个mp4文件,

4>最后再把1-6的MP4文件合并成最终的MP4文件.

5>再打开网站的视频作对比,时长是一样的,画面也能做到同步,那么爬取正确


os模块合成ts文件文件数量最大在650左右,(一次性取700个ts文件合并失败)

网络盛传的最大数在450左右,只能说实践出真知.东西是不断在更新的.

----------------------------------------------

最后附上云盘的源代码以及ts文件链接

代码> ts文件>阿里云盘分享

----------------------------------------------

重点:

>>>>仅供个人学习,请于24小时内删除. 如要观看视频,请支持正版.

>>>>悠着点爬,勿大流量爬取.