2012-07-25 5 views
3

일반적인 머리글/바닥 글과 같이 특정 머리글을 추가해야하는 수백 개의 단어 문서가 있습니다. 머리글을 수정해야하는 것은 아니며,이 문서는 단지 하나만 포함하고 있지 않습니다. Python-docx 모듈로 이것을 할 수있는 방법이 있습니까? 나는 최근에 그것을 발견하고 유망한 것으로 보인다.Python을 사용하여 docx 파일에 헤더 추가

답변

0

아주 간단합니다.

+0

응답 해 주셔서 감사합니다. namespace = wordnamespaces를 사용하면 오류가 발생하므로 대신 nsprefixes를 사용했습니다. 그러나 나는 단지 텍스트 표제를 의미하지는 않습니다. 문서의 모든 페이지로 넘어갈 실제 MS Word 문서 헤더를 의미합니다. 그게 가능하니? @ RobBolgman – Ishu108

+1

이것은 _heading_을 추가합니다 (굵은 텍스트는 섹션의 시작을 나타냄). OP는 _header_를 원합니다 (모든 페이지의 상단에 나타나는 텍스트 에서처럼). 헤더는'''docx''에서 지원되지 않습니다. – wnnmaw

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

0

, 당신은 많은 DOCX 파일의 헤더 섹션을 작성해야합니다. 나는 사람들이 파이썬 - docx에서 이것을 구현하기 위해 노력하고 우려하고있다. 이 새로운 기능을 사용할 수 없지만 직접 docx 파일에 추가 할 수 있습니다.

아직 모르는 경우 docx 파일의 압축을 풀 수 있습니다. 내부에는 header.xml 파일이 있습니다.

제안 사항은 헤더가있는 docx 파일을 만든 다음 lxml 및 zipfile 모듈을 사용하여 모든 docx 파일에서 header.xml 파일을 간단히 업데이트 할 수 있다는 것입니다.

문제를 해결하는 데 도움이 될 수있는 사항이 있으면 알려 주시면 안내 할 수 있습니다.

감사합니다.

0

적절한 단어 표제 형식을 유지합니다.

  1. 을 대체
  2. 템플릿의 XML 트리를 확장 말씀을 통해
  3. 삽입 자리 (즉 #headerText)를 DOCX (그룹 텍스트)에 머리글/바닥 글 템플릿 DOCX 파일을 생성 원하는 텍스트
  4. 출력 새 Word 문서

이 DOCX을 편집 할 수있는 이상적인 솔루션이 아닙니다에 자리하지만, 대부분 해결할 수있는 문제 내 파이썬 docx 텍스트 삽입이 필요합니다.

결국 파이썬 docx는 머리말/꼬리말 편집에 도움이되는 더 많은 기능을 추가 할 수 있습니다.

관련 문제