【python-docx 02】對文檔操作

使用python-docx不僅可以編寫文檔,還可以對現有文檔進行編輯操作。
讓我們逐步完成一個示例創建文檔的步驟,從您可以對文檔執行的兩個主要操作開始,打開和保存。

打開一個文檔

最簡單的就是打開一個文檔,但是不指定文件路徑:

from docx import Document

document = Document()
document.save('test.docx')

這就相當於新建一個word文檔,命名爲test.docx

打開現有文檔

如果你希望打開一個本地的文件,可以按照如下操作:

document = Document('c:/test.docx')
document.save('new_test.docx')

注意:

  • 可以通過這種方式打開任何Word 2007或更高版本的文件(Word 2003及更早版本中的.doc文件將不起作用)。雖然可能無法操作所有內容,但已經存在的任何內容都會加載並保存得很好。功能集仍在構建中,因此無法添加或更改標題或腳註等內容,但如果文檔中包含它們,python-docx還是會原封不動的保存。
  • 如果使用相同的文件名打開並保存文件,python-docx將覆蓋原始文件而不會提示。

打開“類似文件”的文檔

python-docx可以從所謂的類文件對象中打開文檔。還可以再保存到類似文件的對象。實際上,這代表可以對StringIO / BytesIO流對象進行打開或保存文檔的操作,如下所示:

f = open('test.docx', 'rb')
document = Document(f)
f.close()

# 或者如下寫法

with open('foobar.docx', 'rb') as f:
    source_stream = StringIO(f.read())
document = Document(source_stream)
source_stream.close()
...
target_stream = StringIO()
document.save(target_stream)  # 再度保存入內存
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章