admin管理员组文章数量:1583363
前言
大家好,继续咱们的python上传文件到百度网盘系列,今天给大家带来的是如果下载一个m3u8
格式的文件。
M3u8简介
M3U8 是 Unicode 版本的 M3U,用 UTF-8 编码。"M3U" 和 "M3U8" 文件都是苹果公司使用的 HTTP Live Streaming(HLS) 协议格式的基础,这种协议格式可以在 iPhone 和 Macbook 等设备播放。
当然我们要的,肯定不是单纯的能看,毕竟资源是会失效的,对吧,下载下来才最靠谱。
M3u8Downloader
作为一个懒人,能用的三分工具肯定是要用的呀,这里给大家介绍一款m3u8下载工具:m3u8Downloader.
安装方式:
第一种:
第二种:
pip3 install m3u8Downloader 或者pip install m3u8Downloader ,看自己的python版本
撸代码
使用m3u8:
# -*- coding: utf-8 -*-
import os.path
import subprocess
import sys
import time
from m3u8downloader.main import M3u8Downloader, logger, filesizeMiB
from db.mysql import query
from util.file_util import get_str_md5
if __name__ == '__main__':
data = query()
path = '/Users/admin/Downloads/'
for el in data:
print(el)
file_name = get_str_md5(str(el[1]).encode())
downloader = M3u8Downloader(el[0], os.path.join(path, file_name + '.bk'))
downloader.start()
time.sleep(6)
当然看了下人家的源码发现,嘿,我自己也可以写,我写的精简版:
def ffmpeg_download(url_path, target_local_path):
cmd = ["ffmpeg",
"-i", url_path,
target_local_path]
logger.info("Running: %s", cmd)
proc = subprocess.run(cmd)
if proc.returncode != 0:
logger.error("run ffmpeg command failed: exitcode=%s",
proc.returncode)
sys.exit(proc.returncode)
logger.info("mp4 file created, size=%.1fMiB, filename=%s",
filesizeMiB(target_local_path), target_local_path)
大家按需取用哈,当然两个方式都需要下载一个工具 ffmpeg
mac用户直接brew install ffmpeg即可。
总结
好啦,今天的内容比较简单,就是一个下载器,用命令调用一下,预告一下,下次咱们来聊一聊怎么实现文件压缩~。~
版权声明:本文标题:Python上传文件到百度网盘(三)之m3u8下载 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1727234395a1103924.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论