PyPDF2 не читает символы. Python, PDF, pdfminer

Столкнулся с такой проблемой: Хочу прочитать PDF файл с помощью PyPDF, чтобы одна конкретная страница сохранялась в .тхт файл

Код:

import PyPDF2 
pl = open('111.pdf', 'rb') #открываю файл в режиме чтения по битам
plread = PyPDF2.PdfFileReader(pl) 
getpage2 = plread.getPage(2) #определенная страница
text2 = getpage2.extractText() #
print(text2.encode('utf-8')) #принт в командною строку в ютф-8
with open('bdseoru_pdf.txt', 'w', encoding='utf-8') as fg:
    fg.write(text2) #запись в файл .тхт

выполняю запуск в командной строке, получаю вот такой результат:

A:\py\projects3\morningBot>python t.py
b'\n \n\n\n \n\n \n\n \n\n \n\n\n\n \n\n \n\n(\n1647\n) \n \n\n \n\n \n\n-\n \n\n\n\n\n \n\n\n-\n \n\n \n\n\n\n\n\n \n\n\n \n\n:\n \n\n \n\n-\n\n\n \n\n\n \n\n \n\n \n\n \n\n\n\n \n\n \n\n\n \n \n\n \n\n\n\n \n\n \n\n\n \n\n \n\n\n \n\n\n\n. \n \n\n\n\n \n\n\n \n\n\n? \n \n\n \n\n \n\n\n\n \n\n \n\n\n \n\n \n\n\n\n\n\n \n \n'

в сохраненном файле.тхт похожий результат, только вместо "\n" переносы строки, что логично. Но никаких букв нет. Пробовал убирать кодировку:

.encode('utf-8')

без этого лучше не становится, пробовал менять на "ascii" и "unicode", тоже не работает.

уже не знаю, какие костыли приделать, я думал переформатировать .pdf в .doc и обработать там, но с .doc или .docx работать еще геморнее, не нашел нормальной библиотеки, которая могла бы постранично читать. Этому тоже буду рад, если подскажет кто-то...

Говорят воспользоваться pdfminer, но я не нашел документации, которая мне помогла бы сделать то же самое. Еще говорят, что PyPDF2 ПЛОХО работает с кириллицей, но если хоть как-то работает, то что-то же должно быть!? нет?

Если есть инфа как в pdfminer сделать такой же код - буду рад подсказкам...


UPD:


Нашел ответ в похожем вопросе

Сработал код:

#!/usr/bin/env python
import sys
import pdfminer.high_level # $ pip install pdfminer.six

with open('111.pdf', 'rb') as file:
    pdfminer.high_level.extract_text_to_fp(file, sys.stdout)

Получалось открыть в командной строке текст. Но при попытке сохранить его, или выделить отдельную страницу терпел поражение.

Может можно как-то совместить PyPDF & pdfminer, чтобы один открывал, а другой сохранял и выбирал страницу?


Ответы (0 шт):