PDF를 텍스트로 변환

3142 단어 Python
(주)여기에 최종 결과를 쓸 뿐만 아니라 잘못된 시행 오류도 포함한다.
또 중도에서 그만두더라도 올리고 나중에 업데이트한다.

대목적


나는 그들로 하여금 정부가 발표한 문장을 좀 배우게 하고 싶다.(대략)
수치만 포함하는 것보다 일본어를 포함하는 것을 읽게 하고, 일본어를 포함하는 형태소 해석 등도 시행할 생각이다.

이번 목표


미리 불러오기

날과 씨


불러올 글 선택


일본은행의 단관과 코너 경기지수 등을 생각했지만 한눈에 숫자가 나열돼 포기했다.일본어가 많은 것 같아요.나는 샘플을 만들어 보고 싶다.
전판 인쇄01.pdf~all_03.pdf 활용

PDF 읽기


다음을 참조하였습니다.
경제 백서
https://qiita.com/korkewriya/items/72de38fc506ab37b4f2d
참고로 하는 사이트를 보면서 해보세요.
한편 PDF는 이번에 다운로드 소스와 같은 폴더에 저장됐다.
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from cStringIO import StringIO
(略)
오류가 발생했습니다.
ModuleNotFoundError: No module named 'cStringIO'
from cStringIO import StringIO
파이썬 2용 모듈 구조입니다.수정은 다음과 같습니다.
from io import StringIO
계속해.
def convert_pdf_to_txt(path):
    rsrcmgr = PDFResourceManager()
    retstr = StringIO()

    codec = 'utf-8'
    laparams = LAParams()
    laparams.detect_vertical = True
    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
    ansStr = ""

    fp = open(path, 'rb')
    interpreter = PDFPageInterpreter(rsrcmgr, device)
    for page in PDFPage.get_pages(fp):
        interpreter.process_page(page)
        str = retstr.getvalue()
        ansStr = ansStr + str
    fp.close()
    device.close()
    retstr.close()
    return ansStr

ansText = convert_pdf_to_txt("all_01.pdf" )
file = open('pdf.txt', 'w')  
file.write(ansText)
file.close()
이것도 틀렸어.
UnicodeEncodeError: 'cp932' codec can't encode character '\ufb01' in position 91751: illegal multibyte sequence
91751바이트의 문자는 매우 나쁜 것 같다.
print(ansText[91751:91751])
표시되면 아무것도 없습니다. 그리고 [91750:91753]이면 "/"입니다.
부정확한 글자가 있는 것 같아서 아래 사이트를 참고하여 오류를 피하였습니다.
https://tech.bita.jp/article/18
먼저 바이트 열로 변환합니다. (오류 무시)마지막 네 줄은 로 변경됩니다.
ansText = convert_pdf_to_txt("all_01.pdf", )
b = ansText.encode('cp932', 'ignore')
ansText_A = b.decode('cp932')
file = open('pdf.txt', 'w')  
file.write(ansText_A)
file.close()
출력할 수 있습니다.
{0} 텍스트}
https://qiita.com/butada/items/33db39ced989c2ebf644
원래의 PDF

좋은 웹페이지 즐겨찾기