快乐的小萌新 发表于 2020-6-5 20:05

python新手——ts视频下载

别说我写的菜,我就是个新手
能实现功能对我来说都是一个动力

url需要在你播放视频的页面点击f12打开开发者工具,选着network
点击一个ts的分段视频

复制旁边的Request URL,这个就是url


开始的ts文件名



最后的ts文件名



所以一共大概有740多的ts分段

这里就应该改成740


import requests

def pares_data(name):
    #请求头文件,可能需要修改,你可以试着在网页上看看请求头,修改下下面的就可以了
    #主要改origin,和referer
    headers = {

       "accept-encoding": "gzip, deflate, br",

       "origin": "https://jx.7639616.com",
      "if-range": "5bb08f07-97018",

       "referer": "http://www.5nj.com/njplay/?id=https://zuikzy.yiya520.com/20180326/LUQ2vOuD/index.m3u8",
      "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36"

    }
    #文件的多少
    num = name+1
    #几位数字,数字前加上几个0
    s = str(num).zfill(5)
    # 获取到url,观察就只有后面几个数字在变化,提取出来
    url = "https://zuikzy.yiya520.com/20180326/LUQ2vOuD/1000kb/hls/tePouM3571" + s + ".ts";
    print(url)
    response = requests.get(url, headers=headers)
    #获取文件的二进制代码
    data = response.content
    #保存数据
    save_data(data,str(num))


#传入数据和名字
def save_data(data,num):
    num = num.zfill(4)
    with open(num+".ts","wb") as f:
      f.write(data)
      f.close()


from concurrent.futures import ThreadPoolExecutor# 线程池
#应该是线程池50是数量
p = ThreadPoolExecutor(50)
for name in range(1, 800): # 【根据url修改】
    p.submit(pares_data,name)


然后你可以在 ts视频分段的文件夹里    建立一个bat的文件,直接把 copy /d *.ts ceshi.mp4 (意思是把当前文件下的所有ts,拷贝成ceshi.mp4)




漁滒 发表于 2020-6-5 20:18

建议先找到m3u8,然后解析找到ts地址来下载哦

快乐的小萌新 发表于 2020-6-6 08:14

大兵马元帅 发表于 2020-6-5 23:22
公司要求看网课,但是浏览器必须一直是激活状态才行,要不然就给暂停了,能让他后台放吗?谢谢了

可以用vm虚拟机安装个系统,在里面播放,缩小虚拟机就可以实现后台,就是占用比较大,还有个就是油猴,可以看看这篇文章https://blog.csdn.net/qq_40286225/article/details/102764754

zkx790274363 发表于 2020-6-5 20:17

不错不错哦

唐伯虎 发表于 2020-6-5 20:25

不错 不错不错

MOEYU_VANILLA 发表于 2020-6-5 20:28

感谢分享

Future2012 发表于 2020-6-5 20:29


谢谢分享

细水流长 发表于 2020-6-5 20:36

快乐的小萌新 发表于 2020-6-5 20:39

aiai 发表于 2020-6-5 20:18
建议先找到m3u8,然后解析找到ts地址来下载哦

感觉那样太麻烦了,这个简单快捷,哈哈哈哈

快乐的小萌新 发表于 2020-6-5 20:40

细水流长 发表于 2020-6-5 20:36
可以参考猫抓插件里面内容,里面其实写的很好

主要是新手,我还很多不懂,就看了requests

大兵马元帅 发表于 2020-6-5 23:22

公司要求看网课,但是浏览器必须一直是激活状态才行,要不然就给暂停了,能让他后台放吗?谢谢了
页: [1] 2 3
查看完整版本: python新手——ts视频下载