Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在文本可搜索的PDF中搜索正则表达式模式并返回位置坐标_Python_Python 3.x_Pdf_Ocr - Fatal编程技术网

Python 在文本可搜索的PDF中搜索正则表达式模式并返回位置坐标

Python 在文本可搜索的PDF中搜索正则表达式模式并返回位置坐标,python,python-3.x,pdf,ocr,Python,Python 3.x,Pdf,Ocr,请温柔点,我是Python新手。 我安装了几个模块,但找不到一个适合我需要的。也许你能给我指对的那个 我想在一个已经可以搜索文本的PDF中搜索某个模式([a-Z][a-Z][0-9][0-9][0-9][0-9]),它应该会返回所有位置(X1、Y1、X2、Y2) 有类似的东西我可以用吗 谢谢 知道了,或多或少,这是我可以处理的事情。如果你们有更好的解决方案,请站出来!我非常感谢你在这方面的帮助 from pdfminer.pdfdocument import PDFDocument from p

请温柔点,我是Python新手。 我安装了几个模块,但找不到一个适合我需要的。也许你能给我指对的那个

我想在一个已经可以搜索文本的PDF中搜索某个模式([a-Z][a-Z][0-9][0-9][0-9][0-9]),它应该会返回所有位置(X1、Y1、X2、Y2)

有类似的东西我可以用吗


谢谢

知道了,或多或少,这是我可以处理的事情。如果你们有更好的解决方案,请站出来!我非常感谢你在这方面的帮助

from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LAParams, LTTextBox, LTTextLine, LTFigure
import re

def parse_layout(layout):
    """Function to recursively parse the layout tree."""
    for lt_obj in layout:
        if isinstance(lt_obj, LTTextBox):
            if re.findall("[A-Z][A-Z][0-9][0-9][0-9][0-9]", lt_obj.get_text()):
                print(lt_obj.__class__.__name__)
                print(lt_obj.bbox)
                print(lt_obj.get_text())

fp = open('M:/test.pdf', 'rb')
parser = PDFParser(fp)
doc = PDFDocument(parser)

rsrcmgr = PDFResourceManager()
laparams = LAParams()
device = PDFPageAggregator(rsrcmgr, laparams=laparams)
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.create_pages(doc):
    interpreter.process_page(page)
    layout = device.get_result()
    parse_layout(layout)

一步一步地,我要开始了。。。这:似乎是要走的路,但如何实现某种模式?