I

[Python] HWP 파일을 불러오기

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

리눅스 백엔드에서 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,889
웹서버 22-09-18 조회 2,106
OS 22-09-13 조회 2,801
OS 22-09-08 조회 2,334
OS 22-09-07 조회 2,682
OS 22-09-06 조회 2,710
OS 22-09-05 조회 1,696
PHP 22-09-02 조회 2,483
PHP 22-09-01 조회 2,367
PHP 22-09-01 조회 2,872
OS 22-09-01 조회 2,201
OS 22-08-31 조회 2,149
OS 22-08-30 조회 2,185
OS 22-08-29 조회 2,073
PHP 22-08-28 조회 1,870
PHP 22-08-19 조회 2,135
Mobile 22-08-08 조회 2,081
PHP 22-08-02 조회 3,136
MySQL 22-07-28 조회 3,744
OS 22-07-15 조회 2,804
JavaScript 22-06-28 조회 2,336
PHP 22-06-23 조회 2,301
기타 22-06-20 조회 2,032
PHP 22-06-16 조회 5,355
PHP 22-06-16 조회 2,346
기타 22-06-11 조회 1.3만
기타 22-06-05 조회 3,245
기타 22-05-29 조회 7,668
기타 22-05-28 조회 4,601
기타 22-05-26 조회 2,295