溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎么實現(xiàn)自動合并Word并添加分頁符

發(fā)布時間:2023-02-22 16:00:20 來源:億速云 閱讀:110 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹“Python怎么實現(xiàn)自動合并Word并添加分頁符”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Python怎么實現(xiàn)自動合并Word并添加分頁符”文章能幫助大家解決問題。

現(xiàn)有多個Word文檔文件,需將其按名稱順序合并為一個新的Word文件,且需保證每一次合并時,都另起一頁(即新的Word文件一頁中,不能出現(xiàn)兩個及以上的原本單個Word文件的內容)。

一般的,實現(xiàn)多個Word文件的合并,在Word中可以通過“插入”→“文本”→“對象”的方式進行,較為方便。

Python怎么實現(xiàn)自動合并Word并添加分頁符

在彈出的窗口中選擇需要合并的Word文件即可。

Python怎么實現(xiàn)自動合并Word并添加分頁符

但是,這種方法工作量較大,且無法滿足合并時另起一頁的要求。例如,如果原本有兩個Word文件,每個文件中都僅有一頁,一頁中僅在第一行有內容(這里假設是一行數(shù)字),則合并后的新Word文件同樣為一頁,該頁中包含兩行數(shù)字,即無法另起一頁合并。

因此,本文就結合Pythonpython-docxdocx)模塊與docxcompose模塊,實現(xiàn)本文開頭提及的需求。

首先安裝python-docx模塊。由于我用的是Anaconda,因此就直接在Anaconda Prompt (Soft)中加以安裝。

打開Anaconda Prompt (Soft)。

Python怎么實現(xiàn)自動合并Word并添加分頁符

在彈出的界面中輸入:

conda install -c conda-forge python-docx

Python怎么實現(xiàn)自動合并Word并添加分頁符

輸入y,開始安裝。

Python怎么實現(xiàn)自動合并Word并添加分頁符

隨后即可安裝完成。

Python怎么實現(xiàn)自動合并Word并添加分頁符

接下來安裝docxcompose,還是一樣的操作。輸入:

pip install docxcompose

Python怎么實現(xiàn)自動合并Word并添加分頁符

安裝完成后,即可開始代碼的書寫。整體代碼如下:

import os
from docx import Document
from docxcompose.composer import Composer

original_docx_path='F:/其他學生工作/2020就業(yè)聯(lián)絡員/2021.06派遣材料與調檔函/地信1701_就業(yè)派遣材料/'
new_docx_path='F:/其他學生工作/2020就業(yè)聯(lián)絡員/2021.06派遣材料與調檔函/地信1701.docx'

all_word=os.listdir(original_docx_path)
all_file_path=[]
for file_name in all_word:
    all_file_path.append(original_docx_path+file_name)
master=Document(all_file_path[0])
middle_new_docx=Composer(master)
num=0
for word in all_file_path:
    word_document=Document(word)
    word_document.add_page_break()
    if num!=0:
        middle_new_docx.append(word_document)
    num=num+1
middle_new_docx.save(new_docx_path)

首先,對代碼加以初步介紹。original_docx_path為存放需要合并的Word文件路徑,new_docx_path為需要合并入其中的Word文件,這里大家直接在目標路徑下新建一個Word文件并重命名為需要的文件名即可。

隨后,通過os.listdir獲取所有需要合并的Word文件文件名。在這里需要注意,如果需要按照文件名稱作為合并順序,大家直接在資源管理器中調整文件排序方法為名稱即可。隨后通過.append()逐一將文件名稱與其路徑合并。

接下來,設立一個Word文件模板master。其實這個模板就是限定了合并完成后的新Word文件的字體等格式,如果我們不設置模板,就會用docx模塊中的默認模板,導致合并后的文件字體與合并前的文件字體不一致(內容是一致的,主要是字體等格式會出問題)。在這里,為了保證合并完成后的新Word文件的字體等格式與合并前文件一致,直接用all_file_path[0](也就是即將要被合并的第一個文件)作為模板即可。其次,將模板用Composer()激活(這里Composer函數(shù)個人認為就是激活的作用),從而將其作為模板格式,對多個待合并的文件加以約束。

最后,由于需要保證每一次合并都另起一頁,便用.add_page_break()函數(shù),在每一次合并前將這一待合并的文件末尾增添分頁符。同時,由于我們用了第一個待合并文件作為模板,因此后期只需要從第二個文件開始進行合并即可(可以理解為,文件一旦選擇為模板,其自動完成了自身的合并)。最后保存文件即可。

關于“Python怎么實現(xiàn)自動合并Word并添加分頁符”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識,可以關注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI