利用python批量修改word檔名的方法示例

2022-09-29 17:45:10 字數 1581 閱讀 2269

前言

最近不小心把硬碟給格式化了,由於當時的檔案沒有備份,所以一下所有的檔案都沒有了,於是只能採取補救措施,用檔案恢復軟體恢復了一部分的資料出來,但是恢復完畢的檔案的檔名全丟了,所有的檔案只有代號,如下面的圖:

幾萬個檔案這要nsemwstiho是手動的改得要改到明年。所以便動手寫了乙個python的指令碼程式來代替這種繁雜的操作。

實現分析

想讓程式來理解我的word文件裡到底是什麼內容是不可能的了,但是好在我的word文件內容都有標題,大部分的標題正好就是這個文件的檔名,於是我便打算把文件的www.cppcns.com標題當作檔名,而檔名大部分都是內容的第一段,於是思路便有了。於是開始寫程式開幹。

實現方法

首先需要安裝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].texwww.cppcns.comt + '.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,這裡有一篇部落格,乙個大牛寫了個比較利好的外掛程式可以很好的實現(親測好用!

注意:上述的方法對於大部分的word文件是可以的,但是有些文件由於格式等自身原因,無法進行修改,對於這些文件可以直接手動修改。

總結本文標題: 利用python批量修改word檔名的方法示例

本文位址: /jiaoben/python/207178.html

利用python批量修改xml檔案

問題描述 對大量xml標籤進行修改floder的名字,以及path路徑。例如把1修改為train,把路徑修改為當前xml所在位置。xml格式如下 如下 usr bin python coding utf 8 import os import os.path from xml.etree.elemen...

Python利用os模組批量修改檔名

通過查閱資料os模組中rename和renames都可以做到 他們的區別為.rename 只能修改檔名 renames 可以修改檔名,還可以修改檔案上級目錄名稱 另乙個用到的方法是os.listdir path path為路徑 此方法可以將指定路徑資料夾中的檔名錄入乙個列表中 下面是 1 impor...

利用python批量修改資料夾下的檔案字尾名

利用python批量修改資料夾下的檔案字尾名 import os import re import sys 獲取檔案當前工作目錄路徑 絕對路徑 pathdir os.getcwd for file in os.listdir pathdir ext os.path.splitext file if ...