linux合并bilibili下载的blv视频
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux合并bilibili下载的blv视频,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2047字,纯文字阅读大概需要3分钟。
内容图文
![linux合并bilibili下载的blv视频](/upload/InfoBanner/zyjiaocheng/950/fa99c4956e2c494083c0e90875585c43.jpg)
B站下载的学习视频,用python+sh合并处理,自己mark一下
手机bilibili下载了视频,想要搞到电脑上看,结果发现下载下来的都是文件夹里的一堆片段,仔细一看还是 .blv,脑那样啊! 在虚拟机里边用win的客户端试着下载了一个视频,发现是 .flv,看着好像,结果就是。
blv修改成flv就可以了,它就是flv格式的。遇到的主要为问题就是文件名最好不要有空格,linux下空格文件名处理容易出问题。还有os.chdir()是否一定需要绝对路径没有研究,刚开始写的是相对路径,结果有问题
为了排除问题修改为绝对路径,但是相对路径好像也可以,当然绝对路径可定不会出问题。
#!/usr/bin/env python # coding=utf-8 import os import sys import json import os.path def get_video_name(d): ''' b站下载的视频都分割成小片段放在文件夹里,第一层文件夹中有entry.json文件,记录了视频名称 ''' if os.path.exists('entry.json'): with open('entry.json', 'r') as f: data = json.load(f) return data['page_data']['part'] def merge_flv(d, video_name, output_path): try: os.chdir(list(os.walk(d))[1][0]) os.system("bash ~/Desktop/temp/merge.sh %s %s" % (video_name.replace(' ', '_'), output_path)) os.chdir(os.pardir) except Exception as e: print("%s Bash脚本执行失败!\n" % (base_path + '/' + d), e) def get_all_videos(base_path, output_path): dirs = os.listdir(base_path) for d in dirs: try: os.chdir(base_path + '/' + d) video_name = get_video_name(d) merge_flv(base_path + '/' + d, video_name, output_path) except Exception as e: print("%s不是文件夹或者无权限进入!\n" % (base_path + '/' + d), e) if __name__ == "__main__": ''' 如果没有在脚本中指定路径,可以在脚本参加中指定,参数1:根目录,参数2:输入路径 ''' base_path = "" output_path = "" if not base_path: base_path = sys.argv[1] if not output_path: output_path = sys.argv[2] get_all_videos(base_path, output_path)
合并处理用的是linux下的ffmpeg工具,参考的(照抄这里的:http://www.songyawei.cn/content/4015)
#!/bin/bash # 设定脚本需要传入两个参数,第一个是合并的视频名,第二个是合并的视频存放路径 # 修改后缀blv为flv rename .blv .flv *.blv && # bash获取当前目录下的所有flv文件 for f in *.flv; do echo "file $f" >> mylist.txt; done # 合并flv文件 ffmpeg -f concat -i mylist.txt -c copy "$1.flv" && # 经合并生成的文件移动到指定的文件夹 mv "$1.flv" $2
内容总结
以上是互联网集市为您收集整理的linux合并bilibili下载的blv视频全部内容,希望文章能够帮你解决linux合并bilibili下载的blv视频所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。