docx 확장자 파일을 python에서 여는 방법 질문드립니다///

조회수 1086회

현재 파이썬에서 docx확장자 파일을 불러들여 그 내용에 대해 특정한 키워드 검색을 하고

등급 분류를 하는 알고리즘을 만들려고 합니다.

일단 현재까지 만들어진 알고리즘은 간단히 이런식입니다.

import re

Text = "나의 취미는 파이썬으로 프로그래밍 코드를 작성하는 것입니다. 프로그래밍은 재밌고, 파이썬은 쉽습니다."   # 테스트 문자열

# 남은 문제 ? : 텍스트 변수에 DOCX 파일을 READ형식으로 불러오고 테스트

keyword_list = [ '취미', '파이썬', '프로그래밍' ]
count = 0

for i in range(len(keyword_list)):
    p = re.compile(keyword_list[i])
    m = p.findall(Text)
    print(len(m), m)
    if keyword_list[i] in m:
        count = count + 1

print(count)

if count >= 10 :
    print("해당문서의 분류등급 : A" )
elif count <10 and count >= 8 :
    print("해당문서의 분류등급 : B")
elif count < 8 and count >= 6 :
    print("해당문서의 분류등급 : C")
elif count < 6 :
    print("해당문서의 분류등급 : D")

초보적인 알고리즘입니다.

이제 남은건 위에서 정의한 간단한 Text 변수 대신에

docx 파일을 읽어들여 그 문자열에 대해 해당 알고리즘을 적용하면 된다고 생각하는데요..

문제는 docx파일이 어떤 이유에서인지 열리지 않더군요.

인터넷에 검색하면 가장 쉬워보이는 방법이 python-docx documentation 관련으로 언급되는.. 다음과

같은 형식의 코드입니다. ( 이 코드는 이미 존재하는 docx파일을 불러들일때 쓰는 방법이라고 나옵니다)

from docx import Document

document = Document('existing-document-file.docx')
document.save('new-file-name.docx

이런 코드입니다. 그런데 실제로 제가 테스트 docx파일을 만들어서 실행하면

from docx import Document
document = Document('C:\Users\ParkHayun\Desktop\test_count1.docx')




File "<ipython-input-12-381e3cbb3e0f>", line 3
    document = Document('C:\Users\ParkHayun\Desktop\test_count1.docx')
                       ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

과 같이 unicode관련 에러가 뜨는데, 이걸 고치는 방법을 도저히 모르겠네요..

이 에러를 고치거나.. 혹은 다른 방식으로 docx파일을 (가능하다면 한 폴더 안에 있는 여러개의 docx파일을) 불러들이는 방법이 있을까요??

파이썬 고수님들의 도움 부탁드립니다. ㅜ.ㅜ

  • https://stackoverflow.com/a/1347854/8680764 여기에 따르면 Document(r'''C:\어쩌구저쩌구''') 를 해보거나 Document('C:\\Users\\어쩌구저쩌구') 를 해보래요. 엽토군 2019.3.4 21:28
  • \U 때문에 그렇습니다. 엽토군님 말씀처럼 역슬래시 두개를 넣는 형태로 변경하세요 정영훈 2019.3.4 21:44
  • 아 그렇군요!! 답변 감사합니다. 늦게 댓글달아서 죄송요.. ㅎㅎ 박형선 2019.3.12 16:06

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)