当pdf文本是希伯来语时,pdfminer错误地读取数字

时间:2017-11-20 11:27:36

标签: python-3.x utf-8 pdfminer

我使用这个pdfminer代码来阅读pdf:

from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO

def convert_pdf_to_txt(path):
    rsrcmgr = PDFResourceManager()
    retstr = StringIO()
    codec = 'utf-8'
    laparams = LAParams()
    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
    fp = open(path, 'rb')
    interpreter = PDFPageInterpreter(rsrcmgr, device)
    password = ""
    maxpages = 0
    caching = True
    pagenos=set()

    for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages,   password=password,caching=caching, check_extractable=True):
        interpreter.process_page(page)

    text = retstr.getvalue()

    fp.close()
    device.close()
    retstr.close()
    return text

提取的文本似乎正确,包括数字。

我尝试使用相同的代码来读取希伯来语中的PDF(通过将[:: - 1]添加到结果中,使其从右到左显示)。关于字母,文本显示正确。但是,当涉及到数字时,虽然代码会提取它们,但会显示错误的数字。

任何想法都是为什么?

0 个答案:

没有答案