Добрый день, мне нужна помощь / совет относительно извлечения текста с использованием PyPDF2.
мой скрипт работает до определенной степени, однако я получаю следующее поведение с кодом ниже:
fileOtpt = []
resp1Otpt = []
for file in os.listdir(directory):
with open(os.path.join(directory,file), 'rb') as pdfFileObj:
pdfReader = PyPDF2.PdfFileReader(pdfFileObj, strict=False)
pageObj = pdfReader.getPage(0)
number_of_pages = pdfReader.getNumPages()
for page_number in range(number_of_pages):
page = pdfReader.getPage(page_number)
page_content = page.extractText().encode('utf-8')
filen = re.findall(r"ORDERS(.*)\BETWEEN:", page_content)
resp1 = re.findall(r"Test1(.*)\Test2", page_content)
if len(fileOtpt) == 0:
fileOtpt.append("No Data Found")
else:
fileOtpt.append(filen)
fileOtpt = filter(None, fileOtpt)
if len(resp1Otpt) == 0:
resp1Otpt.append("No Data Found")
else:
resp1Otpt.append(filen)
resp1Otpt = filter(None, fileOtpt)
этот код является частью большего фрагмента кода, который в конечном итоге записывается в CSV.
В CSV-файле совпадающие записи не находятся в одной строке.
Мне пришлось использовать опцию «фильтр», чтобы отфильтровать любые пустые выходные данные, которые я получил, хотя это работает, выходные данные не выравниваются.
Я понимаю, что PDF-текст довольно сложно извлечь, поэтому, возможно, есть другая библиотека, которую я могу использовать, или есть какие-то предложения, которые я мог бы попробовать.
любые предложения, постараюсь дать отзыв. заранее спасибо.