TA的每日心情 | 擦汗 昨天 08:59 |
---|
签到天数: 532 天 [LV.9]以坛为家II
版主
- 积分
- 1215
|
利用第三方接口 抓包m3u8真实地址
找到地址后 取出m3u8中的ts文件 遍历下载 下载到本地后 利用os库执行cmd命令 合并成一个视频 实现下载功能
练手写的,大概思路就这样,具体操作忘了。
遍历速度慢,有能力自己加多线程,加起来不难。
python代码:
- import requests
- import re
- import os#创建文件夹 删除文件夹等文件夹操作
- import sys#取运行目录
- def Getmu38(vieo_url):
- url='接口自己抓'+vieo_url
- print('\n正在解析中......')
- res = requests.get(url)
- res = res.json()
- #print(res)
- if res['code'] == '200':
- m3u8_url = res['url']
- #print(m3u8_url)
- Get_ts(m3u8_url)
- print(m3u8_url)
- return m3u8_url
- else:
- print('解析失败,请检查网络或重新解析!')
- def Get_ts(m3u8_url):
- res = requests.get(m3u8_url)
- ts_list = re.compile(r'[a-zA-z]+://[^\s]*').findall(res.text)
- path = sys.path[0]
- print('当前运行目录:'+path)
- if len(ts_list) ==0:
- print('处理失败,请重新尝试!')
- else:
- os.makedirs(path + "\视频")
- for i in range(len(ts_list)):
- ts_url = ts_list[i]
- # print(ts_url)
- res_ts = requests.get(ts_url)
- with open(path + '\视频\\' + str(i) + '.ts', 'wb') as f:
- f.write(res_ts.content)
- print('共需处理' + str(len(ts_list)-1) + '个数据,已处理' + str(i) + '个数据!')
- video_name = input('请输入此电影的名称:')
- os.system('cd ' + path + '\视频\\' + '&& copy /b *.ts '+video_name +'.mp4')
复制代码
测试图:
|
-
查看全部评分
总评分:好评 +2
贡献 +1
|