利用python批量修改word文件名的方法示例
前言
最近不小心把硬盘给格式化了,由于当时的文件没有备份,所以一下所有的文件都没有了,于是只能采取补救措施,用文件恢复软件恢复了一部分的数据出来,但是恢复完毕的文件的文件名全丢了,所有的文件只有代号,如下面的图:
几万个文件这要是手动的改得要改到明年。所以便动手写了一个python的脚本程序来代替这种繁杂的操作。
实现分析
想让程序来理解我的word文档里到底是什么内容是不可能的了,但是好在我的word文档内容都有标题,大部分的标题正好就是这个文档的文件名,于是我便打算把文档的标题当作文件名,而文件名大部分都是内容的第一段,于是思路便有了。于是开始写程序开干。
实现方法
首先需要安装python-docx库,直接通过pip安装: pip install python-docx
具体的程序如下:
# -*- coding: utf-8 -*- """ NameChange1.0 This is a program that automatically modifies the name of an word document. author:fanghao """ from docx import Document import os #这个是放所有待修改的word文件的目录 dir_1 = "C:\\Users\\visg\\Desktop\\4" filenames = os.listdir(dir_1) #自动修改 for a in range(len(filenames)): print(filenames[a]) dir_docx = dir_1 +"\\"+ filenames[a] try: document = Document(dir_docx) except: print("error") else: new_name = document.paragraphs[0].text + '.docx' try: os.rename(dir_1 + os.sep + filenames[a],dir_1 + os.sep + new_name) except(FileNotFoundError,FileExistsError,OSError): print("FileNotFoundError")
具体的目录自己修改下就可以了,这里我直接跳过了哪些名字改后重复的文件。
但是有点坑的地方是恢复出来的文档有的是docx,有的是doc文档,docx文档可以通过以上的方法来改名,但是doc文档便出现了问题。于是便只能先把doc文档转成docx文档,然后再用上述的方法来修改。怎么把doc转成docx,这里有一篇博客,一个大牛写了个比较利好的插件可以很好的实现(http://blog.sina.com.cn/s/blog_5488e3a90100u8ux.html),亲测好用!
注意:上述的方法对于大部分的word文档是可以的,但是有些文档由于格式等自身原因,无法进行修改,对于这些文档可以直接手动修改。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
python练习程序批量修改文件名
复制代码 代码如下: # encoding:utf-8 ### 文件名如:# 下吧.mp3##import os,re fs=os.listdir('xb')for f in fs: ######方法一:partition获取无用字符 #1.将文件名以'['符分为3部分 #ls=f.partition('[') #2.ls[0]为需要文件名,因此获取ls[1:] #dirtystring = ''.join(ls[1:]) #3.开始替换 #newname=f.replace(dirtystri
-
python批量修改文件后缀示例代码分享
ipad的goodreader对JS文件支持不太好,虽然可以读取它但总是无法退出,回不了goodreader的主界面,因此我需要把js文件批量变成纯文本.基于这个目的,我搞了下面一个小应用: 复制代码 代码如下: # -*- coding:utf-8 -*- import osdef rename(): path = raw_input("请输入要处理的文件夹路径") print path old_ext = "."+raw_input("
-
Python批量修改文本文件内容的方法
Python批量替换文件内容,支持嵌套文件夹 import os path="./" for root,dirs,files in os.walk(path): for name in files: #print name if name.endswith(".html"): #print root,dirs,name filename=root+"/"+name f=open(filename,"r") fileconten
-
Python批量修改文件后缀的方法
近期下载了很多各种教程, 但是不幸的是后缀名都是 ".mp4", 而本人喜欢 ".rmvb" 后缀,由于有轻微洁癖, 受不了后面的 ".mp4" 缀, 但是手动修改又太过繁琐, 所以用近期刚学的 Python 来偷懒吧 ! : ) 如图为程序运行前的文件名 我们要做的呢, 就是在当前目录下,新建一个python文件, 如上图 demo2.py 然后用编辑器打开敲入如下代码: 复制代码 代码如下: import os # 列出当前目录下所有的文
-
Python实现批量修改文件名实例
本文实例讲述了Python实现批量修改文件名的方法.分享给大家供大家参考.具体如下: 下载了评书<贺龙传奇>,文件名中却都含有xxx有声下载,用脚本将其去掉.脚本涉及os.rename重命名方法,str.partition方法使用, 及正则match,search方法区别 # encoding:utf-8 ## # 文件名如: # 贺龙传奇\d+[有声下吧www.ysx8.com].mp3 ## import os,re fs=os.listdir('单田芳_贺龙传奇') for f in f
-
python实现批量修改文件名代码
我曾以为,写脚本是很难的,直到我遇到了Python 前言随着国内版权意识的跟进,很多影视音乐资源开始收费,而且度盘又经常随意封杀各种资源,所以,为了保护资源,老司机们越来越倾向于把资源下载到本地,但随着本地资源量的增多,资源管理就成了一件比较头疼的事情;对于资源的管理,方法有很多,我比较喜欢为资源起一个好记的名字,但改文件名是一件无聊又耗时的事情,所以,一个批量重命名的脚本就变得非常重要. 1.批量添加前缀功能 批量重命名 批量重命名逻辑,分三步: (1)确定需要命名的文件们 (2)确定新的文件
-
python批量修改文件名的实现代码
#coding:utf-8 #批量修改文件名 import os import re import datetime re_st = r'(\d+)\+\s?\((\d+)\)' #用于匹配旧的文件名,需含分组 re_match_old_file_name = re.compile(re_st) #要修改的目录 WORKING_PATH = r'F:\Gallery' #---------------------------------------------------------------
-
python实现linux服务器批量修改密码并生成execl
批量修改linux服务器密码,同时生成execl表格 复制代码 代码如下: #!/usr/bin/env python#coding:utf8#随机生成自定义长度密码from random import choiceimport string,pickle def GenPassword(length=8,chars=string.ascii_letters+string.digits): return ''.join([choice(chars) for i in range(lengt
-
利用python批量修改word文件名的方法示例
前言 最近不小心把硬盘给格式化了,由于当时的文件没有备份,所以一下所有的文件都没有了,于是只能采取补救措施,用文件恢复软件恢复了一部分的数据出来,但是恢复完毕的文件的文件名全丢了,所有的文件只有代号,如下面的图: 几万个文件这要是手动的改得要改到明年.所以便动手写了一个python的脚本程序来代替这种繁杂的操作. 实现分析 想让程序来理解我的word文档里到底是什么内容是不可能的了,但是好在我的word文档内容都有标题,大部分的标题正好就是这个文档的文件名,于是我便打算把文档的标题当作文件名,而
-
python批量修改图片后缀的方法(png到jpg)
本人最近在利用faster_rcnn训练kitti数据集,其中需要将kitti数据集转为voc数据集,但是发现: kitti图片是png格式 voc2007是jpg格式 其中有7000多张图片需要批量转换,在网上发现一些代码,但跑起来有错误,于是本人稍作修改: import os import string dirName = "D:your path\\" #最后要加双斜杠,不然会报错 li=os.listdir(dirName) for filename in li: newnam
-
python批量更改目录名/文件名的方法
跑模型和测试一些批量操作时,常常需要一个或多个文件中的文件的命名格式具有一定的规律.有时候获取的数据又是从一些网站爬取下来的,数据名具有一定的不规律性,这是就需要我们去重命名这些文件.10,20个还好说,如果是上百个,上千个,甚至上万个呢?我们还能去手动命名吗?显然不可能的!这时就需要批量更改文件名的操作. 一.python实现批量更改目录名 这里以重命名图片为例 # -*- coding: UTF-8 -*- """ @Author :远方的星 @Time : 2021/4
-
python批量修改图片大小的方法
本文实例为大家分享了python批量修改图片大小的具体代码,供大家参考,具体内容如下 引用的模块 from PIL import Image Image的使用 def resize_image(img_path): try: mPath, ext = os.path.splitext(img_path) if astrcmp(ext, ".png") or astrcmp(ext, ".jpg"): img = Image.open(img_path) (width
-
利用Python批量识别电子账单数据的方法
一.前言 有一定数量类似如下截图所示的账单,利用 Python 批量识别电子账单数据,并将数据保存到Excel. 百度智能云接口 打开https://cloud.baidu.com/,如未注册请先注册,然后登录点击管理控制台,点击左侧产品服务→人工智能→文字识别,点击创建应用,输入应用名称如Baidu_OCR,选择用途如学习办公,最后进行简单应用描述,即可点击立即创建.会出现应用列表,包括AppID.API Key.Secret Key等信息,这些稍后会用到. 二.调用Baidu aip识别 首
-
python批量修改文件编码格式的方法
本文实例为大家分享了python批量修改文件编码格式的具体代码,供大家参考,具体内容如下 使用说明: 1.使用工具:Python2.7.6+chardet2.3.0,chardet2.3.0下载地址:点击这里 2.环境配置:Python安装+配置环境变量,chardet解压放在Python安装目录\Lib\site-packages下 举例:批量修改当前路径下所有.cpp文件的编码格式为UTF-8,代码如下: python: import os import sys import codecs
-
利用Python过滤相似文本的简单方法示例
问题 假设你在存档中有成千上万的文档,其中许多是彼此重复的,即使文档的内容相同,标题不同. 现在想象一下,现在老板要求你通过删除不必要的重复文档来释放一些空间. 问题是:如何过滤标题足够相似的文本,以使内容可能相同? 接下来,如何实现此目标,以便在完成操作时不会删除过多的文档,而保留一组唯一的文档? 让我们用一些代码使它更清楚: titles = [ "End of Year Review 2020", "2020 End of Year", "Janua
-
利用python画一颗心的方法示例
前言 Python一般使用Matplotlib制作统计图形,用它自己的说法是'让简单的事情简单,让复杂的事情变得可能'.用它可以制作折线图,直方图,条形图,散点图,饼图,谱图等等你能想到的和想不到的统计图形,这些图形可以导出为多种具有出版质量的格式.此外,它和ipython结合使用,确实方便,谁用谁知道!本文将介绍利用python中的matplotlib画一颗心,感兴趣的朋友们下面来一起看看吧. 安装matplotlib 首先要安装matplotlib pip install matplotli
随机推荐
- Web前端框架Angular4.0.0 正式版发布
- iOS 实现简单的加载等待动画示例(思路与实现)
- Python实现网站文件的全备份和差异备份
- vpn连接程序hta版实现代码(修改)
- 用Photoshop为短发MM接长发
- 局域网代理服务器组建方案 教程
- asp.net 处理F5刷新页面重复提交页面的一个思路
- PHP 自定义错误处理函数trigger_error()
- 基于OpenCV的PHP图像人脸识别技术
- PHP 字符截取 解决中文的截取问题,不用mb系列
- python中实现延时回调普通函数示例代码
- 鼠标滑上去后图片放大浮出效果的js代码
- javascript 获取元素样式必杀技
- 微信小程序 ES6Promise.all批量上传文件实现代码
- 引用参数和传值参数的区别深入解析
- java利用url实现网页内容的抓取
- C#实现对用户输入数据进行校验的类实例
- C# KeyUp事件中MessageBox的回车(Enter)键回调问题解决方案
- C#实现写入与读出文本文件的实例代码
- 使用Npoi操作excel的解决办法