bilibili手机视频下载目录整理脚本

平时会从bilibili上面下载视频教程,然后拷到电脑上看。因为深圳这边的宽带太贵了,只能用手机无线流量将就着。所以从手机内存里拷出来的文件目录是没有中文标题的,总是一个个点开实在麻烦。才有了写这个python小工具。

#coding:utf8
import os
import re
import json
import shutil


'''
如要使用python2运行会报错,因为编号的问题,python3默认直接utf8。
这是通过os.walk()获取的信息,返回的是一个迭代器。
('/home/chueng/Documents/37418274', ['1', '11', '4', '3', '7', '10', '6', '9', '12', '5', '2', '8'], [])
('/home/chueng/Documents/37418274/1', ['lua.flv.bili2api.80'], ['entry.json', 'danmaku.xml'])
('/home/chueng/Documents/37418274/1/lua.flv.bili2api.80', [], ['index.json', '0.blv', '0.blv.4m.sum'])

这个程序仅支持单个blv文件(b站上面只有单视频的文件才能选择加速播放)
以后需要补充的功能:
	1、支持多个视频源文件
	2、支持多种视频格式
	3、程序完成后再自动把多余的文件删除
'''

# 手动修改这里的路径
# 这个是bilibili的视频文件项目目录“37423413”
PATH_ = '/home/chueng/Documents/37423413'
# 这个是整理后视频存放的目录
PATH_SAVE = '/home/chueng/Documents/'

def main():
    PATH_walk = os.walk(PATH_)
    
    # 用于记录视频的目录名称
    title = ''
    
    for i in PATH_walk:
    
        if len(i[2]) == 0:
            continue       
        if len(i[1]) > 0:    
            fileName_in_jsonfile = i[0]+'/'+i[2][0]
            with open(fileName_in_jsonfile) as f:
                content = json.loads(f.read())
                fileName = content['page_data']['part']
            if title == '':
                title = content['title']

            oldFileName_path = i[0]+'/'+i[1][0]+'/'+'0.blv'
            newFileName_path = i[0]+'/'+i[1][0]+'/'+fileName       
            os.renames(oldFileName_path, newFileName_path)
            shutil.move(newFileName_path, PATH_)
            
    os.renames(PATH_, PATH_SAVE+title)

if __name__ == '__main__':
    main()


猜你喜欢

转载自blog.csdn.net/weixin_42127490/article/details/88381000