Я использую PyPDF2 для чтения PDF файлов в python. Хотя он хорошо работает для языков на английском и европейском языках (с алфавитами на английском языке), библиотека не читает азиатские языки, такие как японский и китайский. Я пробовал encode('utf-8')
, decode('utf-8')
но ничего не работает. Он просто печатает пустую строку при извлечении текста.
Я пробовал другие библиотеки, такие как textract и PDFMiner, но пока ничего не добился.
Когда я копирую текст из PDF и вставляю его в блокнот, символы превращаются в текст случайного формата (возможно, в другой кодировке).
def convert_pdf_to_text(filename):
text = ''
pdf = PyPDF2.PdfFileReader(open(filename, "rb"))
if pdf.isEncrypted:
pdf.decrypt('')
for page in pdf.pages:
text = text + page.extractText()
return text
Может кто-то указать мне верное направление?
Я тоже сталкивался с подобной проблемой. Я мог бы решить это, используя библиотеку "tika-python".
import tika
tika.initVM()
from tika import parser
parsed = parser.from_file('fileName.pdf')
print(parsed["metadata"])
print(parsed["content"])
Вы можете найти дополнительную информацию о библиотеке здесь