辋川集

木末芙蓉花,山中发红萼,涧户寂无人,纷纷开且落

By - 陳 思敬

Python批量重命名

我对存储在网上的文件,始终缺乏安全感,即使是喜马拉雅,排名第一的声音平台。
从早期离线听漏风独雨的有声书开始,我逐步摸索出一套本地存储喜马拉雅声音的方法:
1. 通过网页版强大的搜索功能,找到自己喜欢的好声音,对声音文件点赞或者关注作者;
2. 用 Kindle Fire 找到对应的专辑,整张下载;
3. 通过 ES文件浏览器找到下载目录,注意,这是一批“乱码”文件,文件名是一串随机字符,无扩展名,另有一个日志文件,体积比正常的声音文件小;
4. 按文件创建时间升序排列,以新文件名+数字批量重命名,同时修改扩展名为m4a;
5. 用 Android File Transfer 将文件拷到 Mac 系统,MediaHuman Audio Converter 批量转换为 mp3;
6. 天天静听批量修改 id3 信息。

其实,存在硬盘上的文件,远无喜马拉雅可靠。
坚持一年,我已经存了不少的专辑,终于在搬运心理学书籍的时候,找到精确重命文件的方法。
第一步:通过 jQuery 列出真实文件名:

jQuery("a.title").each(function(){
    console.log(jQuery(this).text());
})

第二步:用 Sublime Text2 转为 Python 数组:

\n → ',

第三步,将待命名的文件拷贝到 file-renames.py 所在的目录:
检查文件反序之后,执行下列脚本:

# -*- coding:utf-8 -*-
__author__ = 'Christen'
import os
import os.path
# 参考:http://blog.csdn.net/risemypassion/article/details/44561451
newnames = ['梦的解析第1章有关梦的科学研究', '梦的解析第2章梦的解析方法1', '梦的解析第2章梦的解析方法2-一个梦例的分析', '梦的解析第3章梦是愿望的达成', ...,'第7章梦过程的心理学4-由梦中惊醒-梦的功能-焦虑梦', '第7章梦过程的心理学5-原发过程与继发过程-压抑',
            '第7章梦过程的心理学6-潜意识与意识-现实(完结篇)']
curDir = os.getcwd()
i = 0
for parent, dirnames, filenames in os.walk(curDir):
    for filename in filenames:
        if filename.find("mp3") != -1:
            newname = newnames[i]
            print(filename, "---->", newname)  # 预览
            i += 1
            os.rename(os.path.join(parent, filename), os.path.join(parent, newname + ".mp3"))

效果:
file-rename-py
已知问题:
文件的创建和修改时间,均变为:1904年1月1日

Leave a Reply

Your email address will not be published.
*
*