У меня есть 5 pdf-файлов, которые я хочу преобразовать в txt-файлы. 3 из файлов работают нормально. Остальные 2 возвращаются только (CID: номер), например:
* * Тысяча два (чид: 47) (чид: 57) (чид: 3) (чид: 69) (чид: 72)
Я написал свой код с помощью pdfminer.
Кто-нибудь знает, как это исправить или настроить мой код?
Кстати: текст на немецком языке без CJK, и я попытался преобразовать файл на странице https://www.pdf2go.com, и это сработало.
Вот мой код:
import sys
import io
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.layout import LAParams
from pdfminer.converter import XMLConverter, HTMLConverter, TextConverter
# importieren Modul regex
import re
import os
filename = 'test.pdf'
page_start_input = 24
pages = list(range((page_start_input-1),500))
def pdfparser(data):
fp = open(data, 'rb')
resource_manager = PDFResourceManager()
retstr = io.StringIO()
codec = 'utf-8'
pagenos = set(pages)
laparams = LAParams()
device = TextConverter(resource_manager, retstr, codec=codec, laparams=laparams)
interpreter = PDFPageInterpreter(resource_manager, device)
for page in PDFPage.get_pages(fp, pagenos):
interpreter.process_page(page)
data = retstr.getvalue()
# print (data)
file = open("test_out.txt", "w", encoding='utf-8')
file.write(data)
file.close()
pdfparser(filename)