[Python] HWP 파일을 불러오기 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

[Python] HWP 파일을 불러오기 정보

기타 [Python] HWP 파일을 불러오기

본문

리눅스 백엔드에서 HWP 파일을 처리하는 것은 상당히 골치아픈 일입니다.

다행히 Python에는 HWP 파일을 핸들링하는 모듈도 있습니다 ^^

 

1. Olefile


import olefile 
 
f = olefile.OleFileIO('한컴파일.hwp') # HWP 파일 열기
encoded_text = f.openstream('PrvText').read() # PrvText 스트림의 내용 꺼내기
decoded_text = encoded_text.decode('UTF-16') # 유니코드를 UTF-16으로 디코딩
print(decoded_text)

 

Olefile 모듈은 Microsoft OLE2 파일을 조작하기 위한 모듈로서

위와 같은 방법으로 한컴 HWP 파일도 불러올 수 있습니다 ^^

 

 

2. PyHWP의 HWP5TXT


from subprocess import Popen, PIPE
 
file = '한컴파일.hwp'
process = Popen(['hwp5txt', file], stdout=PIPE, stderr=PIPE)
stdout, stderr = process.communicate()
data = stdout.decode('utf-8')
print(data)

 

PyHWP 모듈은 Olefile에 dependent하기 때문에

Olefile에서 제대로 불러오지 못하는 HWP 파일의 경우

PyHWP에서도 마찬가지로 잘 불러올 수 없다는 문제가 있습니다.

그러한 경우에 위와 같이 PyHWP 설치시 함께 설치되는 hwp5txt.exe 파일을 이용하면

대부분의 문제를 해결할 수 있습니다 ^^

다만 EXE 파일이므로 윈도우 환경에서만 실행 가능하다는 한계가 있습니다.

추천
3

댓글 0개

전체 5,147
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIR SOFT