일반적인 머리글/바닥 글과 같이 특정 머리글을 추가해야하는 수백 개의 단어 문서가 있습니다. 머리글을 수정해야하는 것은 아니며,이 문서는 단지 하나만 포함하고 있지 않습니다. Python-docx 모듈로 이것을 할 수있는 방법이 있습니까? 나는 최근에 그것을 발견하고 유망한 것으로 보인다.Python을 사용하여 docx 파일에 헤더 추가
답변
아주 간단합니다.
사용자가 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()
... ///
이것은 완벽하게 작동했습니다! 코드를 약간 정리할 수도 있지만 – wnnmaw
, 당신은 많은 DOCX 파일의 헤더 섹션을 작성해야합니다. 나는 사람들이 파이썬 - docx에서 이것을 구현하기 위해 노력하고 우려하고있다. 이 새로운 기능을 사용할 수 없지만 직접 docx 파일에 추가 할 수 있습니다.
아직 모르는 경우 docx 파일의 압축을 풀 수 있습니다. 내부에는 header.xml 파일이 있습니다.
제안 사항은 헤더가있는 docx 파일을 만든 다음 lxml 및 zipfile 모듈을 사용하여 모든 docx 파일에서 header.xml 파일을 간단히 업데이트 할 수 있다는 것입니다.
문제를 해결하는 데 도움이 될 수있는 사항이 있으면 알려 주시면 안내 할 수 있습니다.
감사합니다.
적절한 단어 표제 형식을 유지합니다.
- 을 대체
- 템플릿의 XML 트리를 확장 말씀을 통해
- 삽입 자리 (즉 #headerText)를 DOCX (그룹 텍스트)에 머리글/바닥 글 템플릿 DOCX 파일을 생성 원하는 텍스트
- 출력 새 Word 문서
이 DOCX을 편집 할 수있는 이상적인 솔루션이 아닙니다에 자리하지만, 대부분 해결할 수있는 문제 내 파이썬 docx 텍스트 삽입이 필요합니다.
결국 파이썬 docx는 머리말/꼬리말 편집에 도움이되는 더 많은 기능을 추가 할 수 있습니다.
- 1. docx 파일에 테이블 만들기
- 2. Web.Config 파일에 만료 헤더 추가
- 3. pybarcode ImageWriter 및 docx 모듈을 사용하여 docx 파일에 바코드 이미지 추가
- 4. python을 사용하여 jpeg 파일에 주석 추가하기
- 5. docx 파일에 디지털 서명란을 삽입하려고합니다.
- 6. 자바를 사용하여 JPEG 파일에 16 진수 헤더 정보 추가
- 7. 배치 파일을 통해 여러 파일에 헤더 추가
- 8. Apache POI를 사용하여 .docx 파일의 페이지 헤더 업데이트
- 9. 다른 헤더 파일에 헤더 포함
- 10. python을 사용하여 WordPerfect dll에 clr 참조 추가
- 11. OOXML을 사용하여 Docx 파일 비교
- 12. 헤더 파일에 포함
- 13. XWPFDocument로 Apache POI로 .docx 파일에 그림 추가하기
- 14. XML을 사용하여 링크가있는 Docx 수정
- 15. 추가 헤더
- 16. 헤더 파일에 typedef 사용
- 17. 헤더 파일에 오류가 발생했습니다
- 18. 내 헤더 파일에
- 19. 는 헤더 파일에 이상한
- 20. PrintStream을 사용하여 텍스트 파일에 추가
- 21. 찾기를 사용하여 numpy .npy 파일에 추가 헤더 정보를 추가 할 수 있습니까?
- 22. , DOCX
- 23. docx 파일을 docx 파일 형식으로 변환
- 24. 모든 PHP 파일에 헤더 추가하기
- 25. Python을 사용하여 외부에서 인트라넷에 로그인
- 26. java cant의 pdf 파일에 헤더 또는 여백을 추가 하시겠습니까?
- 27. 먼 미래 추가 .ttf 및 .otf 파일에 헤더 만료
- 28. IIS 7.5의 특정 파일에 콘텐츠 인코딩 헤더 추가
- 29. 파일 도우미를 통해 Excel 파일에 헤더 행 추가
- 30. C++ 헤더 파일에 정의 된 클래스에 메서드 추가
응답 해 주셔서 감사합니다. namespace = wordnamespaces를 사용하면 오류가 발생하므로 대신 nsprefixes를 사용했습니다. 그러나 나는 단지 텍스트 표제를 의미하지는 않습니다. 문서의 모든 페이지로 넘어갈 실제 MS Word 문서 헤더를 의미합니다. 그게 가능하니? @ RobBolgman – Ishu108
이것은 _heading_을 추가합니다 (굵은 텍스트는 섹션의 시작을 나타냄). OP는 _header_를 원합니다 (모든 페이지의 상단에 나타나는 텍스트 에서처럼). 헤더는'''docx''에서 지원되지 않습니다. – wnnmaw