bilibili动画下载视频批量改名(python)
bilib应用
在微软商店中下载哔哩哔哩动画,虽然软件UI古老,但是贵在稳定和支持下载

安装以后搜索自己想要的视频,然后缓存下载

下载后进入下载的路径

视频文件重命名
打开自动命令的程序或者py脚本,选择视频合集下载的路径

选择是否自动添加序号

最后在下载目录的video下面可以找到整合好的视频

打包成exe程序
pyinstaller -F -w -i rename.ico rename.py
python脚本
import os
import sys
import json
import shutil
import easygui
isIndex = False
def findname(path):
with open(path,'r',encoding='utf-8') as load_f:
load_dict = json.load(load_f)
partno = load_dict['PartNo']
partname = load_dict['PartName']
print(type(partname))
return partno,partname
def mkdir(path):
# 去除首位空格
path=path.strip()
# 去除尾部 \ 符号
path=path.rstrip("\\")
# 判断路径是否存在
# 存在 True
# 不存在 False
isExists=os.path.exists(path)
# 判断结果
if not isExists:
# 如果不存在则创建目录
# 创建目录操作函数
os.makedirs(path)
print(path + ' 创建成功')
return True
else:
# 如果目录存在则不创建,并提示目录已存在
print(path+' 目录已存在')
return False
def reorganizefile(mainpath,videopath):
for fpathe,dirs,fs in os.walk(mainpath): # os.walk是获取所有的目录
infofile ="";
mp4file="";
for f in fs:
##读取info文件
filename = os.path.join(fpathe,f)
if filename.endswith(".info"): # 判断是否是"xxx"结尾
infofile = filename
partno,partname = findname(infofile)
if filename.endswith(".mp4"):
mp4file = filename
##如果info文件和mp4文件都存在
if infofile!="" and mp4file!="" :
partno,partname = findname(infofile)
if isIndex :
partfile = partno+"_"+partname+".mp4"
else:
partfile = partname+".mp4"
changpath = os.path.join(videopath,partfile)
shutil.move(mp4file,changpath);
if __name__ == "__main__" :
mainpath =easygui.diropenbox("bilibili下载的视频目录","选择目录");
if not mainpath :
sys.exit()
mainpath.strip();
if os.path.exists(mainpath):
isIndex =easygui.ccbox("是否在文件名前面添加序号","选择序号",choices=("是", "否"));
if not isIndex :
sys.exit()
videopath = os.path.join(mainpath,"video")
mkdir(videopath)
reorganizefile(mainpath,videopath)
else :
print("输入路径错误!!")
github
https://github.com/vvck/bilidownload-rename
bilibili动画下载视频批量改名(python)的更多相关文章
- 批量修改bilibili客户端下载视频文件名
代码已上传:Github 起因 昨天晚上从B站电脑客户端下了一个分集视频 但是下载后的视频是这样的: 视频名是这样的: 这样既不直观又不美观,就算把视频文件放到一个文件夹内,连续看视频时也不容易记住看 ...
- python文件批量改名
python对文件进行批量改名用到的是os模块中的listdir方法和rename方法. os.listdir(dir) :获取指定目录下的所有子目录和文件名 os.rename(原文件名,新文件名 ...
- 批量下载网站图片的Python实用小工具(下)
引子 在 批量下载网站图片的Python实用小工具 一文中,讲解了开发一个Python小工具来实现网站图片的并发批量拉取.不过那个工具仅限于特定网站的特定规则,本文将基于其代码实现,开发一个更加通用的 ...
- Python3 根据m3u8下载视频,批量下载ts文件并且合并
Python3 根据m3u8下载视频,批量下载ts文件并且合并 m3u8是苹果公司推出一种视频播放标准,是一种文件检索格式,将视频切割成一小段一小段的ts格式的视频文件,然后存在服务器中(现在为了减少 ...
- python you-get 下载视频
python使用you-get模块下载视频 pip install you-get # 安装先 怎么用 进入命令行: you-get url 暂停下载:ctrl + c ,继续下载重复 y ...
- 今日头条、抖音、西瓜、火山、微视、陌陌等自媒体平台小视频批量下载工具v1.1.0(视频搬运福利)
前言 目前各大自媒体平台爆火,网络流量暴涨,各大自媒体平台的小视频为广大个广告主带来了如泉涌般的的视频流量,更给广大的自媒体小编带来了丰厚的利益回报,想要创做更多的自媒体内容着实不易,下面给广大的小视 ...
- 利用python下载视频
我们知道,有些网页上的视频,没有下载的按钮,并且有些视频需要付费下载,很多同学因此很苦恼.不怕,有问题找我,我试试用程序员的方式通俗易懂教会大家. 1.你先下载一个Python,不会下载的同学可以看这 ...
- 教你如何入手用python实现简单爬虫微信公众号并下载视频
主要功能 如何简单爬虫微信公众号 获取信息:标题.摘要.封面.文章地址 自动批量下载公众号内的视频 一.获取公众号信息:标题.摘要.封面.文章URL 操作步骤: 1.先自己申请一个公众号 2.登录自己 ...
- youtube视频批量下载
youtube 下载视频脚本: 得到下载列表:download_list var links = document.getElementsByTagName('a'); for(var i =0;i& ...
随机推荐
- Python ThreadPoolExecutor 线程池导致内存暴涨
背景 在有200W的任务需要取抓取的时候,目前采用的是线程池去抓取,最终导致内存暴涨. 原因 Threadpoolexcutor默认使用的是无界队列,如果消费任务的速度低于生产任务,那么会把生产任务无 ...
- shopping cart
#Author:Kevin_hou #定义产品列表 product_list =[ ('HUAWEI',5999), ('Watch',500), ('Nike',800), ('Toyota',20 ...
- 【UE4】Windows 的几种打包方式
简述 自动化工具(Unreal Automation Tool,简称 UAT) 自动化工具使用特定的命令 BuildCookRun 封装流程包含 构建(Build):该阶段将为所选择的平台编译可执行文 ...
- [对对子队]Beta阶段项目展示博客
Beta阶段项目展示博客 1 团队成员的简介和个人博客地址 成员 头像 岗位 博客 个人介绍 黄贤昊 PM 17373253 喜欢玩游戏和做游戏,项目经验基本都和游戏相关,擅长摸鱼,偶尔敬业. 吴桐雨 ...
- [no code][scrum meeting] Beta 5
$( "#cnblogs_post_body" ).catalog() 例会时间:5月18日14:30,主持者:叶开辉 下次例会时间:5月19日11:30,主持者:黎正宇 一.工作 ...
- 链表中环的入口结点 牛客网 剑指Offer
链表中环的入口结点 牛客网 剑指Offer 题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null. # class ListNode: # def __init__(se ...
- Python 语法错误 except Exception, e: ^ SyntaxError: invalid syntax
出这个问题是因为python2和python3 语法有些不同 python2 和 3 处理 except 子句的语法有点不同,需要注意: Python2 try: print ("hello ...
- linux 的 逻辑卷管理
lvm 逻辑卷管理器 关于逻辑卷管理lvm的一些操作 新建磁盘 sdcfdisk /dev/sdc 创建分区,更改分区id 为8e,改变分区类型为 lvm linux 创建物理卷与pv相关 pvcre ...
- lvs 四层负载相关
都打开 /etc/sysctl.conf 中的 net.ip4.ip_forward=1.开启路由转发功能. 分发器 : eth0:192.168.1.66 (VIP) eth1:192.168.2. ...
- oracle 账号解锁 java.sql.SQLException: ORA-28000: the account is locked
日志报错:ORA-28000: the account is locked 1.plsql登录提示用户被锁定 2.sys登录sqlplus登录查看 SQL> select username,ac ...