当前位置: 首页 > news >正文

织梦做的网站怎么传到网上企业网站优化技巧

织梦做的网站怎么传到网上,企业网站优化技巧,怎么将网站做成html,js做网站登录框验证码在这个数字时代,我们经常在网页上遇到各种精彩的视频,但往往只能观看而无法下载。今天,我将向大家介绍如何使用 Python 自动下载网页中的 M3U8 链接,并将其转换为 MP4 格式,让你轻松保存喜欢的视频! 一、准…

在这个数字时代,我们经常在网页上遇到各种精彩的视频,但往往只能观看而无法下载。今天,我将向大家介绍如何使用 Python 自动下载网页中的 M3U8 链接,并将其转换为 MP4 格式,让你轻松保存喜欢的视频!

一、准备工作

首先,确保你已经安装了 ffmpeg。如果还没有安装,可以通过以参考这里安装:https://wizops.net/archives/202404/323.html

二、代码流程

  • 下载 M3U8 文件保存到临时目录。
  • 下载 key 文件保存到临时目录。
  • 生成本地 M3U8 文件内容保存到临时目录。
  • 下载 ts 文件保存到临时目录下的index目录。
  •  使用ffmpeg将m3u8转换成mp4文件

三、代码实现

import os
import urllib3
import requests
import subprocess
from m3u8 import M3U8
from tenacity import retry, wait_random, stop_after_attempt
from gevent.pool import Pool
urllib3.disable_warnings()pool = Pool(10)@retry(stop=stop_after_attempt(3), wait=wait_random(2, 5))
def request(url):"""发送请求"""try:res = requests.get(url, verify=False, timeout=5)return resexcept Exception as e:print(url, e)raise edef download_segment(url, path):"""下载ts文件"""filename = url.split("/")[-1]file = os.path.join(path, filename)if os.path.exists(file):return res = request(url)with open(file, "wb")as f:f.write(res.content)def convert_mp4(path, output):# 使用FFmpeg将local.m3u8转换为一个MP4文件    ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy xxx.mp4# m3u8文件中有key需要带参数-allowed_extensions ALLsubprocess.call(['ffmpeg', '-allowed_extensions', 'ALL', '-i', 'local.m3u8', '-c', 'copy', output], cwd=path)def download_m3u8(url, path, output):"""下载单个m3u8主程序url: m3u8链接urlpath: 单个m3u8目录output: 转换输出文件路径名"""base_url = url.rsplit("/", 1)[0]# 创建目录segment_dir = os.path.join(path, "index")if not os.path.exists(segment_dir):os.makedirs(segment_dir)# 下载M3U8文件m3u8_file_name = os.path.join(path, "index.m3u8")res = request(url)with open(m3u8_file_name, "w", encoding="utf-8")as f:f.write(res.text)# 解析M3U8文件m3u8_obj = M3U8(res.text)print(m3u8_obj.keys)# 下载key文件 for item in m3u8_obj.keys:if item:key_url = item.uri if item.uri.startwith("http") else f"{base_url}/{item.uri}"key_file_name = os.path.join(path, item.uri)res = request(key_url)with open(key_file_name, "w", encoding="utf-8")as f:f.write(res.text)segments = []# 生成新的本地M3U8文件内容for segment in m3u8_obj.segments:segments.append(segment.uri)segment.uri = "index/" + segment.uri.split("/")[-1]# 保存M3U8文件local_file_name = os.path.join(path, "local.m3u8")with open(local_file_name, 'w') as f:f.write(m3u8_obj.dumps())# 下载ts文件for url in segments:pool.spawn(download_segment, url, segment_dir)pool.join()# ts文件下载完成, 转换成mp4文件if len(segments) == len(os.listdir(segment_dir)):convert_mp4(path, output)if __name__ == "__main__":url = "https://v3.mstopq.com/202302/26/E92zcVVNkT1/video/1000k_0X720_64k_25/hls/index.m3u8"cur_path = os.path.abspath(os.path.dirname(__file__))path = os.path.join(cur_path, "终结者创世纪_tmp")output = os.path.join(cur_path, "终结者创世纪.mp4")download_m3u8(url, path, output)

三、注意事项

  • 确保已经安装了 ffmpeg,并且在系统路径中可以访问到。
  • 输出路径必须存在,否则可能会出现错误。
  • 根据实际情况,可能需要根据 M3U8 文件的具体内容调整 ffmpeg 命令的参数。

通过这个简单的示例,你可以使用 Python 自动下载网页中的 M3U8 链接并将其转换为 MP4 格式。现在,你可以轻松保存喜欢的视频,随时随地观看啦!希望这个技巧对你有所帮助。如果有任何问题或建议,欢迎在评论中留言!

http://www.yidumall.com/news/94287.html

相关文章:

  • web官网网页上海百度整站优化服务
  • wordpress 安装轮播百度关键词seo优化
  • WordPress建站去掉后缀网络推广文案怎么写
  • 免费的创建个人网站山西疫情最新情况
  • 网站建设 设计创意收录查询
  • 深圳做响应式网站制作关键词搜索引擎排名查询
  • 网站内页301网络推广外包流程
  • 如何申请域名建立网站正规代运营公司
  • 正规网站建设哪家好seo网络优化教程
  • 网站开发语言在那看出来网站设计开发网站
  • 做英文网站百度导航下载2022最新版
  • 社区教育网站建设项目计划书php开源建站系统
  • b2c网站怎么做长沙网站优化方法
  • wordpress写插件吗上海seo推广外包
  • 做装修的有那些网站比较好b站推广网站入口2023的推广形式
  • 有哪些网站做自建房设计网站制作需要多少钱
  • 山西网站建设公司排名搜索网站有哪几个
  • web网站开发学习抖音关键词挖掘工具
  • 宜昌做网站要什么条件百度在线下载
  • 有必要对网站进行seo吗朝阳区seo技术
  • 管理咨询公司经营范围包括哪些北京网站优化经理
  • 有经验的南昌网站设计南宁网络推广软件
  • 外贸商城网站建设产品营销推广方案
  • 深圳外贸网站设计公司优化大师软件下载
  • 贵阳学网站建设百度搜索关键词排名人工优化
  • bootstrap学校网站模板品牌推广宣传词
  • 济南正规网站建设公司营销网站的建造步骤
  • 梅州网站建设wlwl橙子建站官网
  • 个人作品网站链接怎么做苏州seo安严博客
  • 南宁营销型网站设计个人做seo怎么赚钱