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

如何在python中的PDFminer中找到正则表达式?,python,regex,pdf,pdfminer,Python,Regex,Pdf,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 i

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


什么不起作用?

你试过
match=re.findall(r“\[\s*prima(?!\s)”,x)
了吗?我刚试过,但它似乎没有读取整个文件(1300多页)所以匹配项非常少……我不知道软件的具体情况,但似乎您正在获取页面,可能您必须在for循环中添加逻辑来处理每个页面。这是否回答了您的问题?您是否尝试过
match=re.findall(r“\[\s*prima(?!\s)”,x)
相反?我只是尝试了一下,但它似乎没有读取整个文件(1300多页),因此匹配项很少……我不知道软件的具体情况,但似乎您正在获取页面,可能您必须在for循环中添加逻辑来处理每个页面。这是否回答了您的问题?