I

[Python] HWP 파일을 불러오기

· 2022-05-29 (일) 08:04:59 · 7659

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

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

 

1. Olefile

[code]

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)

[/code]

 

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

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

 

 

2. PyHWP의 HWP5TXT

[code]

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)

[/code]

 

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

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

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

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

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

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

|
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

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

+
분류 제목 글쓴이 날짜 조회
PHP 22-09-28 조회 1,886
웹서버 22-09-18 조회 2,098
OS 22-09-13 조회 2,794
OS 22-09-08 조회 2,331
OS 22-09-07 조회 2,678
OS 22-09-06 조회 2,704
OS 22-09-05 조회 1,692
PHP 22-09-02 조회 2,478
PHP 22-09-01 조회 2,364
PHP 22-09-01 조회 2,867
OS 22-09-01 조회 2,192
OS 22-08-31 조회 2,144
OS 22-08-30 조회 2,180
OS 22-08-29 조회 2,069
PHP 22-08-28 조회 1,867
PHP 22-08-19 조회 2,132
Mobile 22-08-08 조회 2,077
PHP 22-08-02 조회 3,133
MySQL 22-07-28 조회 3,738
OS 22-07-15 조회 2,799
JavaScript 22-06-28 조회 2,333
PHP 22-06-23 조회 2,298
기타 22-06-20 조회 2,027
PHP 22-06-16 조회 5,351
PHP 22-06-16 조회 2,342
기타 22-06-11 조회 1.3만
기타 22-06-05 조회 3,241
기타 22-05-29 조회 7,660
기타 22-05-28 조회 4,597
기타 22-05-26 조회 2,292