下载盗版网站视频并将.ts视频文件合并

.

1.分析视频请求

1

复制代码
通过抓包观察我们发现视频是由.ts文件拼接成的每一个.ts文件代表一小段

2


复制代码
通过观察0.ts和1.ts的url我们发现他们只有最后一段不同我们网上找到url获取的包

3

我们发现index.m3u8中储存着所有的.ts文件名在拼接上前面固定的url就可以获取到.ts文件

2.数据获取和拼接

python 复制代码
import shutil
import requests
import re
import os
from multiprocessing.dummy import Pool

url ='https://vip.lz-cdn.com/20221109/37176_faf59775/1200k/hls/mixed.m3u8' # m3u8网址

res = requests.get(url).text
print(res)
# 正则提取内容
ts=re.findall(r",\n(.*?)\d+.ts",res,flags=re.S)[0]
print(ts)
ts2=re.findall(r"(\d+).ts",res,flags=re.S)
print(ts2)
start=int(ts2[0])
end=int(ts2[-1])
def xlx(i):
    i=ts+str(i)
        # 拼接完整的ts文件下载链接
    u = 'https://vip.lz-cdn.com/20221109/37176_faf59775/1200k/hls/' + i + ".ts"#拼接url
    r = requests.get(url=u).content
    print(i, u)
        # 二进制写入到本地

    with open('./nihao/' + i + '.ts', mode="wb") as file:
        file.write(r)


if not os.path.exists('./nihao'):
    os.mkdir('./nihao')
else:
    shutil.rmtree('./nihao')
    os.mkdir('./nihao')



pool = Pool(100)                                     #开启线程池
        # 定义循环数
origin_num = [ x for x in range(start,end+1)]

pool.map(xlx, origin_num)

os.system('copy /b ' + r'E:\python\xinfadi\nihao\*.ts ' + r'E:\python\xinfadi\new.mp4')
print("合并成功")
相关推荐
大数据魔法师1 分钟前
MongoDB(八) - MongoDB GridFS介绍及使用Python操作GridFS
数据库·python·mongodb
weixin_3776348422 分钟前
【python异步多线程】异步多线程爬虫代码示例
开发语言·爬虫·python
struggle202537 分钟前
PennyLane 是一个用于量子计算、量子机器学习和量子化学的跨平台 Python 库。由研究人员构建,用于研究
python·量子计算
扑克中的黑桃A38 分钟前
Python-素数
python
扑克中的黑桃A38 分钟前
Python学习的自我理解和想法(4)
python
扑克中的黑桃A1 小时前
Python-打印杨辉三角(进阶版)
python
laity171 小时前
激活IDM的几种方法
python
广州正荣2 小时前
Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案
人工智能·爬虫·科技
加油搞钱加油搞钱2 小时前
鹰盾加密器基于AI的视频个性化压缩技术深度解析:从智能分析到无损压缩实践
人工智能·音视频·视频加密·鹰盾加密·鹰盾播放器
gsls2008082 小时前
使用xdocreport导出word
前端·python·word