如何在python中的PDFminer中找到正则表达式?

2024-05-15 04:28:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个代码,可以在我的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
import re

def convert_pdf_to_txt(path="fel.pdf"):
    regex = re.compile(r"\[(\s)prima(?!\S)")

    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()
    for x in text:
        match = re.findall(r"\[\s*prima(?!\S)", text)
        print(match)


print(convert_pdf_to_txt("fel.pdf"))

正则表达式是“[prima”

什么不起作用


Tags: fromimportrepdfdevicepasswordpdfminercaching

热门问题