Я уверен, что это вопрос для начинающих, но здесь мы go.
У меня есть папка с сотнями PDF-файлов. Я хочу преобразовать их все в .txt, чтобы я мог дальше обрабатывать данные из них.
Приведенный ниже код работает, однако он преобразует один pdf в несколько файлов .txt (в зависимости от страниц, которые есть в каждом pdf).
import os
from os.path import isfile, join
import PyPDF2
pdf_dir = '/.../Desktop/Projekti/PDFs'
txt_dir = '/.../Desktop/Projekti/PDFs'
corpus = (f for f in os.listdir(pdf_dir) if not f.startswith('.') and isfile(join(pdf_dir, f)))
for filename in corpus:
pdf = open(join(pdf_dir, filename),'rb')
pdfReader = PyPDF2.PdfFileReader(pdf)
for page in range(0, pdfReader.numPages):
pageObj = pdfReader.getPage(page)
text = pageObj.extractText()
page_name = "{}-page{}.txt".format(filename[:-4], page+1)
with open(join(txt_dir, page_name), mode="w", encoding='utf-8') as o:
o.write(text)
Однако мне нужно преобразовать каждый pdf в один один .txt файл. Можно ли что-то настроить в конце кода, чтобы это произошло? Или у вас есть другой способ предложить мне это? Thnx.