2017-12-08 18 views
0
import docx2txt 

my_text=docx2txt.process("file1.docx") 
print(my_text) 

내가 다음과 같은 오류 표시이 코드에서 DOCX 파일을 읽을 수 : 코멘트 섹션에서 언급 한 @cowbert으로읽기 DOCX 파일 오류

File "/usr/lib/python3.5/zipfile.py", line 1093, in _RealGetContents 
    raise BadZipFile("File is not a zip file") 
zipfile.BadZipFile: File is not a zip file 
+0

docx 파일은 실제로 XML이며 zip 파일의 일부 메타 데이터입니다. 파싱하려면 먼저 압축을 풀어야합니다. 우편 번호는 파일을 압축 해제 할 수 없다는 것을 주장합니다 (실제 docx 파일이 아니거나 그 마법 번호가 zip 압축 파일을 나타내지 않는 지점까지 손상되었습니다). 'file1.docx'는 실제로 /zip/inzip/7zip과 Office에서 열립니다 (Office 97 호환성 모드라고 말하지 않습니다)? – cowbert

+0

@cowbert 이제 나는 그것이 부패되어서 그것이 작동하지 않는 이유를 확인했다. –

+0

제이, 당신은 가져 오기 docx에 의해 워드 문서를 읽을 python-docx 모듈을 사용해 볼 수 있습니다. – Anup

답변

2

을 파일 가능성이 손상되었거나 그것은 우편 형식입니다. 제공된 코드가 정확합니다.

import textract 
text = textract.process("path/to/file.extension") 

이 패키지는 여러 파이썬 패키지와 다른 소스 라이브러리의 상단에 내장되어 있습니다 : 당신은 또한 .docx 파일을 지원하는 textract 사용할 수 있습니다. 일단 설치하면 several packeges (docx2txt 포함)이 기본적으로이 패키지에 모두 설치됩니다.

+0

는 pyhthon3에서 작동하는 textract입니까? –

+0

예, textpack을 설치하려면'pip' 또는'easy_install'을 설치해야합니다. – Ssein