最近不小心把硬盘给格式化了,由于当时的文件没有备份,所以一下所有的文件都没有了,于是只能采取补救措施,用文件恢复软件恢复了一部分的数据出来,但是恢复完毕的文件的文件名全丢了,所有的文件只有代号,如下面的图:

几万个文件这要是手动的改得要改到明年。所以便动手写了一个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批量更改word文件名_python批量修改word文件名相关推荐

  1. python改word域_Python自动化修改word实例

    前言 利用Python docx模块,可以很方便地打开和修改Word 2007及以后的文档.本文简单地介绍了如何使用python修改word文档中的内容. 例子与代码 word文档的内容是一封表扬信, ...

  2. python批量删除文件名_python批量删除文件名中的未知字符

    python 批量删除文件名中的未知字符 如上图所示, 需要修改的文件名的个数超过 500 个, 如果一个一个的删除非常的费时间, 现 在用 python 修改很容易,方便又省时间,具体步骤如下 1 ...

  3. python 修改word内容_python批量修改word文件名

    最近不小心把硬盘给格式化了,由于当时的文件没有备份,所以一下所有的文件都没有了,于是只能采取补救措施,用文件恢复软件恢复了一部分的数据出来,但是恢复完毕的文件的文件名全丢了,所有的文件只有代号,如下面 ...

  4. python 修改文件名_Python 批量修改文件名

    本篇梳理了批量修改文件名的Python代码. import os import numpy as nppath = 'C:/Users/Owen/PycharmProjects/Create_File ...

  5. python改文件名_python批量修改文件名、批量修改xml文件的path和filename

    1. python批量修改文件名(控制文件名的起始编号) import os path = "E:/Project/label/fire/" # 目标路径 filename_lis ...

  6. python 批量修改文件名_Python 批量修改文件名

    当你从网络下载一季电视剧或一部电影时,文件名前边可能有很多前缀,比如说圣城家园,人人影视或者其他什么的. 在查看文件时往往只显示前面的一些不是那么必要的字符了,降低了查看文件名的效率,在文件夹里看起来 ...

  7. python批量删除文件名_Python批量修改文件名(删除指定关键字)

    因下载的视频文件大多数含有视频网站的url或者包含其他不要的字符串,用python自动修改. 目前缺点: 1,需要把.py放在目录内运行 代码如下:import os, re while True: ...

  8. python给word添加水印_python 批量给 word,excel,ppt 或 pdf 文件添加水印

    python 批量给 word 或 pdf 文件添加水印 更新 20200310 更新 README,对于中文显示为方块的问题,需使用宋体(simsun.ttc).黑体(simhei.ttf)等字体. ...

  9. python批量生成word报告_python自动生成word报告 | 如何将现有的数据利用python 填入word的表格中?...

    关于python连接SQL server数据库的问题? 你把完整的连接代码贴一下 如何将现有的数据利用python 填入word的表格中? VB,VBA我会,py不会哦 DB2教程推荐,新手想学习这个 ...

最新文章

  1. 机器学习系列22:异常检测
  2. mysql decode语句_mysql数据灾难恢复方案
  3. Innodb内核线程并发机制
  4. 《只管去做》-如何做靠谱的年度计划
  5. 2022张宇考研基础30讲 第十一讲 多元函数微分学
  6. Linux局域网多人聊天软件
  7. 凸函数与优化,以及海森矩阵
  8. mysql学习笔记 51_mysql学习笔记
  9. 使用OpenResty达到十万级并发超高性能Web应用(一):HelloWorld
  10. 使用 Mypy 检查 30 万行 Python 代码,总结出 3 大痛点与 6 个技巧!
  11. Pdf.js 解决电子印章问题(最新)
  12. 无线耳机的分类和技术特点
  13. kermit使用总结
  14. java毕业设计免税商品优选购物商城设计mybatis+源码+调试部署+系统+数据库+lw
  15. python爬虫入门案例day10:珠宝图片
  16. 德国战车7比1狂胜巴西
  17. 论文笔记丨关于稳态视觉诱发电位的脑机接口
  18. 比较详细的采访 Vue 作者尤雨溪
  19. 计算机网页设计论文加成品,计算机网页设计教学研究论文
  20. 库卡机器人怎么用c语言写程序,KUKA机器人之了解简单的机器人程序

热门文章

  1. python中表示分支结构_下面Python关键字中,不用于表示分支结构的是()。
  2. JavaScript 反调试技巧
  3. php riak,PHP-Riak:快速获取多个项目
  4. 《Android源码设计模式》之迭代器模式
  5. 【考研英语语法】写作中的复杂名词短语
  6. linux挂载盘阵权限,linux挂接盘阵错误
  7. Robotaxi进入“大洗牌”时代,主机厂成接盘侠
  8. ubuntu下进行流量监控软件nethogs安装
  9. python实现windows ie代理切换
  10. NOIP 2020 螺旋升天爆炸记