现在网上电影在线观看基本都是m3u8格式,或者经过js加密后的m3u8格式,一般来说爬m3u8文件,先刷新电影找到以m3u8结尾的文件,然后双击就将该文件下载下来,然后用记事本打开m3u8文件找到以ts文件结尾的路径并和该网站域名进行拼接,将拼接后的地址放到浏览器中会提示下载该ts文件。这时候恭喜你成功一大半了,之后就想办法把m3u8文件里的ts文件循环下载下来然后合成一个mp4文件就可以了

插入代码
import threading
import requests
from queue import Queue
import time
import os
def get_url(m3u8,wangzhangurl):if not os.path.exists("download"):#创建要下载文件的文件夹os.mkdir("download")with open(m3u8, 'r', encoding='utf-8') as pf:content = pf.readlines()#读取m3u8文件for i in content:url_half = i.strip()if  url_half.endswith("ts"):#对该文件进行处理并拼接完成的url,该url文件可以获得ts文件,每个m3u8文件和电影网站域名的拼接方式都不一样,需要自己尝试拼接url_evey = wangzhangurl + url_half#将文件放入队列response_q.put(url_evey)
class Consumer(threading.Thread):def __init__(self, j):#1.继承父类init:super().__init__()self.j= j      def run(self):##线程不能只干一个任务就退出,需要不断取任务:while True:##停止条件:消费者任务队列为空if response_q.empty():breaktry:#运用多线程爬ts文件url_full = response_q.get(block=False)name=str(url_full)[-20::]print(f'======{self.j}执行任务===')self.get_movie(url_full,name)print(f'======{self.j}任务完成===')except:pass# 二、解析函数:def get_movie(self,urlfull, name):#爬取ts文件并保存headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36"}response = requests.get(url=urlfull, headers=headers).contentwith open("download\%s" % name, "wb") as pf:pf.write(response)
def merge_ts():#定义ts合成转换MP4函数
#获取当前文件夹地址并合并下载文件夹地址file_path=os.getcwd()+"\download"file_list = os.listdir(file_path)file_list.sort()¥#对下载的ts文件进行排序#编写合并转化命令shell_strs = 'copy /b ' + file_path + "\*.ts " + file_path + "\我的老婆是大佬.mp4"#运行该命令os.system(shell_strs)
response_q = Queue()##消费者队列
#m3u8文件的路径
m3u8=r"C:\Users\Administrator\Desktop\新建文件夹\index.m3u8"
#和m3u8文件里拼接成整个ts文件的网站的地址
wangzhangurl=r"https://56.com-ok-bilibili.com/20190926/31754_e5277946/1000k/hls/"
if __name__ == '__main__':get_url(m3u8, wangzhangurl)start_time = time.time()consumer_name = ['c1', 'c2', 'c3','c4','c5','c6','c7']c_tread = []##多线程for j in consumer_name:c_crawl = Consumer(j)c_crawl.start()c_tread.append(c_crawl)##多线程阻塞主线程for treadi in c_tread:treadi.join()end_time = time.time()merge_ts()print(f'===========任务耗时{end_time-start_time}==========')

爬取m3u8格式文件并下载ts文件转换为MP4文件相关推荐

  1. Python爬取m3u8格式视频并解密ts文件合并转为mp4格式

    一. m3u8是什么格式 m3u8是苹果公司推出的视频播放标准,是m3u的一种,只是编码格式采用的是UTF-8. m3u8准确来说是一种索引文件,使用m3u8文件实际上是通过它来解析对应的放在服务器上 ...

  2. python爬取m3u8格式视频

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

  3. Python爬取m3u8格式的视频

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

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

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

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

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

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

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

  7. python 爬取m3u8 to MP4 视频

    twtter 一.用postman 捋顺爬取流程 1.进行身份验证 第一次握手连接 第二次提交cookie信息,获得token信息 2.获取视频连接json数据 https://api.twitter ...

  8. 利用协程爬取m3u8视频

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

  9. python lol脚本_python 爬取英雄联盟皮肤并下载的示例

    爬取结果: 爬取代码 import os import json import requests from tqdm import tqdm def lol_spider(): # 存放英雄信息 he ...

  10. Java+Jsoup: 爬取二次元妹子图片并下载到本地(完整代码)

    简介 这是一个基于Jsoup的用来爬取网页上图片并下载到本地的Java项目. 完整项目见 https://github.com/AsajuHuishi/CrawlByJsoup exe文件见getIm ...

最新文章

  1. Python,OpenCV轮廓属性、轮廓检测及绘制
  2. 人工智能将如何改进物联网?
  3. 开发日记-20190620 关键词 今日回顾
  4. 跨服务器Session共享的四种方法
  5. 10 分钟快速入门海量数据搜索分析引擎 Elasticearch
  6. js处理上下文代码的2个阶段
  7. java 反射机制_基础篇:深入解析JAVA反射机制
  8. Android 捕获异常,上报异常日志,捕获奔溃日志,bugly使用实例
  9. 什么是 DevSecOps?系列(一)
  10. 【转】《从入门到精通云服务器》第三讲-配置与升级云服务器
  11. via浏览器原始css,简约却不简单—via浏览器
  12. 前端经典练手项目|用 JavaScript 实现网页版扫雷
  13. P2123 皇后游戏 (贪心+公式推导)
  14. 苹果快捷键怎么调出来_原来还有这么好用的CAD快捷键,文末附赠快捷键鼠标垫!留言走起...
  15. 【icem】非结构体网格的质量+混合网格的合并问题
  16. YOLO-MASK对图像数据集进行清洗
  17. 流浪地球2真实成本多少?怎么参与?找谁参与?安全可靠吗?
  18. 东华大学计算机学院刘国华,刘国华(东华大学教授)_百度百科
  19. 纯html css动画效果,8个超震撼的HTML5和纯CSS3动画源码
  20. 泰克|安捷伦|普源|PICO示波器程控软件二次开发NS-Scope

热门文章

  1. 电脑加域、exchange邮箱设置、绑定打印机
  2. 怎么把图片弄成logo_怎么把图片上的logo做出来??
  3. 游戏开发技术帖:光线追踪技术的误点和难点
  4. 笔记本拆机后无法开机是什么原因
  5. python和jieba库进行简单文本处理之天龙八部小说
  6. 刷完 900 多道算法题的首次总结:LeetCode 应该怎么刷?
  7. kali更新grub修复双系统windows10引导启动项
  8. mysql微信昵称特殊符号_mysql保存微信昵称特殊字符的方法
  9. 内网穿透的几种方式-免费与收费(钉钉、Frp、花生壳、nat123)
  10. 成功注册一个谷歌账号