import os
import requests
import re
from multiprocessing import Pool
from Crypto.Cipher import AES# 这个是你要保存的文件位置,可自定义,记得\\这个不要丢了,写这里是方便下面代码中不写。
path = r'E:\newfilm\\'
# 打开能播放你喜欢资源的网址,按F12,找到浏览器里XHR选项里m3u8文件,右键复制网址,记得选response 里面很多ts网址的。
m3u8 = 'https://youku-com.jjyl12349.com/20210517/BlYZo7Kz/1000kb/hls/index.m3u8'def get_key(m3u8):response = requests.get(m3u8).textkey_link = re.search('URI=\"(.*?)\"', response).group(1)key = requests.get(key_link).text.encode('utf-8')crypto = AES.new(key, AES.MODE_CBC, key)return cryptodef get_tslist(m3u8):response = requests.get(m3u8).textts_list = re.findall('https:.*?\.ts', response)return ts_listcrypto = get_key(m3u8)def down_ts(ts):res = requests.get(ts).contentwith open(path + ts.split('/')[-1], 'wb')as f:f.write(crypto.decrypt(res))def rename_ts(ts_list):dict = {}k = 1for ts in ts_list:ts = ts.split('/')[-1]dict[ts] = '{:04d}'.format(k) + '.ts'k += 1for file in os.listdir(path):if file in dict.keys():os.rename(path + file, path + dict.get(file))def hebing(name):COMD1 = f'copy /b {path}*.ts {path}{name}.mp4'COMD2 = f'del {path}*.ts'os.system(COMD1)os.system(COMD2)if __name__ == '__main__':ts_list = get_tslist(m3u8)pool = Pool(10)#这里的数字10可以修改为你电脑核心的2倍左右,比如你电脑是8核心的,可以设置为16.pool.map(down_ts, ts_list)#执行批量下载rename_ts(ts_list)#批量命名按顺序排列,防止合成的时候影片不连续。hebing('地球脉动第二季第一集')#合成mp4文件,删除其他的ts文件。

爬取M3U8文件支持的网页在线播放资源(AES-128加密)相关推荐

  1. 【Python网络爬虫实战篇】使用selenium+requests爬取下载高清源视频:关于爬取m3u8文件链接解析为ts视频合并成mp4视频的分析实战

    这两天博主在摸鱼时,偶然间接触到了流媒体的概念,一时间来了兴致.再加上之前博主有着七.八年的视频制作经验,深知视频素材获取的不易.因此,打算利用自己所学的python网络爬虫的知识,通过编写代码实现获 ...

  2. python多线程爬取m3u8视频(包含AES解密)

    python爬取m3u8视频(包含AES解密) 前情提要 部分代码摘录于某位大哥(写代码的时候收藏书签了的打算写博客的时候带上链接的,无奈手贱删除了chrome用户,所有的书签也没了,找到再补上),在 ...

  3. Python爬虫:用最普通的方法爬取ts文件并合成为mp4格式

    介绍: 在自学爬虫时,一开始就是爬取一些文字(比如小说之类的),再后来变成了图片,再后来变成了视频- 其中最简单的就是对文字的爬取了,从文字过渡到图片也只是多了几行代码而已,但是: 从图片过渡到视频就 ...

  4. python多线程爬取ts文件并合成mp4视频

    python多线程爬取ts文件并合成mp4视频 声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关 目录 python多线程爬取ts文件并合成mp4视频 前言 一.分析页面 ...

  5. python根据url获得m3u8_python爬取m3u8连接的视频

    本文为大家分享了python爬取m3u8连接的视频方法,供大家参考,具体内容如下 要求:输入m3u8所在url,且ts视频与其在同一路径下 #!/usr/bin/env/python #_*_codi ...

  6. python嗅探m3u8_python爬取m3u8连接的视频

    本文为大家分享了python爬取m3u8连接的视频方法,供大家参考,具体内容如下 要求:输入m3u8所在url,且ts视频与其在同一路径下 #!/usr/bin/env/python #_*_codi ...

  7. 利用协程爬取m3u8视频

    利用协程爬取m3u8视频 ​ 在进行了爬虫的相关学习之后,自己尝试爬取了一些视频,但动辄ts文件就几百个,单线程伤不起那时间,一个一个等实在太慢了,想利用多线程,查看相关资料,又说python是假的多 ...

  8. python爬取m3u8格式视频

    python爬取m3u8格式视频 m3u8原理 脚本环境 爬取步骤 步骤的具体实现 python细节处理说明 参考代码 m3u8原理 当我们在网页播放视频时,网页向服务器发起一个以.m3u8结尾的连接 ...

  9. Python爬取m3u8格式的视频

    声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢! Python爬取m3u8格式的视频目录 背景 1.文件信息 那什么是m3u8呢? 2.构造请求获得m3u8文件 3 ...

最新文章

  1. alexnet vgg_从零开始:建立著名的分类网2(AlexNet / VGG)
  2. python定义一个类怎么弄_Python怎么创建一个类
  3. crontab 每天凌晨12点定时器_每天摆摊到凌晨5点,94岁煎饼奶奶火了,一句话惊醒无数中学生!...
  4. Python基础----集合
  5. VB 几种打开文本文件速度对比
  6. Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案
  7. 中国传媒大学公开课:理解人类传播
  8. word文档字体段落文档格式标准设置(个人)
  9. 惠普计算机安转不上xp,雨林木风xp系统上安装不上惠普打印机驱动的解决办法...
  10. PHP利用JWT实现token和refresh_token
  11. 职场上个人的核心技术_五年老员工被空降领导要求交出核心技术,拒绝后,隔天上班懵了...
  12. 酷客多小程序百城宣讲会-郑州站圆满成功
  13. 相册服务器维护,相册云服务器
  14. 什么是高匿代理、匿名代理和透明代理?它们有什么区别?
  15. 有没有好人看看,谢谢谢谢
  16. 从数据库当中读取Double类型数据,数值过大时会变成科学计数法问题解决方案
  17. android系统关机广播,Android开机广播和关机广播
  18. 3D 智慧农场可视化——解锁绿色生态田园
  19. jQuery css选择器大全,总有你用得到的东西。
  20. matplotlib:颜色、标记和线类型,刻度、标签和图例,注释与子图加工,将图片保存到文件,matplotlib 设置

热门文章

  1. 计算机网络--基本命令使用
  2. Oracle 设置 sort au,oracle数据库拼音排序及NLS_SORT配备[转]
  3. docker-comose安装失败解决
  4. 若微型计算机在工作时突然断电,2014计算机软考程序员考前模拟试题
  5. HP电脑恢复系统(一键还原)
  6. IC自媒体访谈:吾爱IC社区
  7. 通用输入/输出多路复用器GPIO(General-purpose Input / Output)-TMS320F2812
  8. mysql front的命令_mysql-front远程连接自己linux服务器上的mysql服务器
  9. C++编译时提示:error: ‘x’ does not name a type
  10. 手把手教你在百度飞桨云平台下运行PPYOLO-E,训练COCO数据集