フォルダ内にあるpdfのテキストを抽出
Q&A
解決したいこと
Pythonでフォルダ内にあるpdfファイルのテキストデータを抽出したいのですが、以下のコードだと、どのpdfファイルでもテキストデータを抽出することができません。
ですので、以下コードの問題点と対処法をご教授いただけますと幸いです。何卒よろしくお願い致します。
該当コード
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.pdfpage import PDFPage
import csv
import io
import os
import glob
retstr = io.StringIO()
csvList = []
files = []
files.append("C:/Users/ymats/OneDrive/デスクトップ/pdf Python")
def pdf_mine():
for i in files:
try:
parser = PDFParser(open('i','rb'))
doc = PDFDocument(parser)
parser.set_document(doc)
file_name = i
rsrcmgr = PDFResourceManager()
device = TextConverter(rsrcmgr, retstr)
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.create_pages(doc):
interpreter.process_page(page)
device.close()
result = retstr.getvalue()
retstr.close()
csvList.append([result])
with open("C:/Users/ymats/OneDrive/デスクトップ/pdf Python","i.csv""r",encoding="UTF-8",) as f:
csv.writer(f).writerows(csvList)
except Exception as e:
print('is not a readable pdf')
pdf_mine()
結果
is not a readable pdf