我有幾百個文檔需要添加特定的頭文件(如在典型的MS Word頭文件/頁腳中)。這不是標題需要修改,這些文件不包含一個。有沒有辦法用Python-docx模塊做到這一點?我最近發現它,它看起來很有希望。使用python添加頭到docx文件
3
A
回答
0
很簡單。
from docx import *
document = yourdocument.docx
docbody = document.xpath('/w:document/w:body',namespaces=wordnamespaces)[0]
docbody.append(heading('Your header text',1) )
1
如果用戶沒有docx包,也可以通過win32來完成,使用這個。
..//
import win32com.client
if win32com.client.gencache.is_readonly == True:
win32com.client.gencache.is_readonly = False
win32com.client.gencache.Rebuild()
from win32com.client.gencache import EnsureDispatch
from win32com.client import constants
word = win32com.client.gencache.EnsureDispatch("Word.Application")
word.Visible = False
#tell word to open the document
word.Documents.Open (IP_Directory_Dest + "\\" + name)
#open it internally
doc = word.Documents(1)
# for changing the header information of the Document
word.Visible = True
word.ActiveDocument.Sections(1).Headers(win32com.client.constants.wdHeaderFooterPrimary).Range.Text='STUFF U WANT AS UR DOCUMENT HEADER'
word.ActiveDocument.Save()
... ///
+0
這工作完美!儘管你可能會清理一些代碼 – wnnmaw 2014-02-21 23:55:46
0
那麼,如果我的理解,你需要創建在許多docx文件標題部分。 據我擔心人們正在使用python-docx來實現這一點。 雖然此新功能不可用,但您可以直接將其添加到您的docx文件。
如果您還不知道,可以解壓縮docx文件。在它的結構裏面有一些header.xml文件。
一個建議是,使用頭創建一個docx文件,然後使用lxml和zipfile模塊,您可以簡單地更新所有docx文件中的header.xml文件。
如果這件事可以用來幫助你解決問題,讓我知道,我可能會指導你通過。
Regards
0
保留一個合適的詞標題格式。
- 創建頁眉/頁腳模板的docx文件
- 插入佔位符(即#headerText)通過Word中插入的docx(組文)
- 擴大模板的XML樹
- 更換你想要的文字
- 輸出新的Word文檔
這不是編輯DOCX一個理想的解決方案佔位符,但它主要是解決了我的python docx文本插入需要。
最終,python docx可能會添加更多功能來幫助編輯頁眉/頁腳。
相關問題
- 1. 如何使用python-docx將行號添加到docx文檔部分
- 2. 添加到python文件的開頭
- 3. 如何添加表格邊框到Word文檔使用Python Docx
- 4. 使用python在* .docx文件中添加標題
- 5. 將符號添加到.docx文件
- 6. C#使用OpenXML附加到DOCX文件
- 7. 如何使用python將http頭添加到pdf文件?
- 8. C#.NET DOCX添加圖像到一個.docx文件
- 9. 添加頭文件到Podspec
- 10. python-docx添加水平線
- 11. 使用openxml將標題添加到docx
- 12. 使用Apache POI將圖像添加到單詞.docx文檔頭中XWPF
- 13. 用python讀取docx文件
- 14. 使用novacode將標題中的圖片添加到.docx DocX
- 15. 使用python讀寫.docx文件
- 16. 使用python保存回docx xml文件
- 17. 如何使用python創建docx文件
- 18. 使用Java將頭文件添加到excel文件
- 19. 使用XWPFDocument將圖片添加到使用Apache POI的.docx文件
- 20. 使用python-docx從docx文件讀取coreproperties關鍵字
- 21. 使用python-docx更新大量文件的docx元數據
- 22. 將文本和行添加到文件的開頭(Python)
- 23. 使用docx4j加密docx文件
- 24. Word文檔到python-docx
- 25. 使用pybarcode將條形碼圖像附加到docx文件ImageWriter和docx模塊
- 26. 如何將文件添加到開頭?
- 27. 添加一個頭文件到Xcode
- 28. 自動將#pragma添加到頭文件
- 29. awk將頭添加到輸出文件
- 30. CMake添加頭到項目文件
謝謝你的迴應。使用namespaces = wordnamespaces給了我一個錯誤,所以我使用nsprefixes來代替。但我並不只是一個文本標題,我的意思是一個實際的MS Word文檔標題,它將傳遞到文檔中的每個頁面。那可能嗎? @RobVolgman – Ishu108 2012-07-25 18:55:40
這將添加一個_heading_(如用粗體文本標記一個部分的開始),OP想要一個_header_(如在每個頁面頂部顯示的文本中)。 '''docx'''不支持頭文件 – wnnmaw 2014-02-21 23:48:33