Python - pdf to txt только возврат (CID: номер) - PullRequest
0 голосов
/ 11 ноября 2018

У меня есть 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)
...