Python Pdfminer 从解析器中排除行

Python Pdfminer exclude lines from parser

您好,我正在使用典型的方法从 pdf 解析 txt。 问题是每个页面都有 headers 页脚等,我不想在文本文件输出中写入。 有没有办法排除例如每页的前 3 行(我知道 headers 有多少行)

我的代码在这里:

from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfpage import PDFTextExtractionNotAllowed
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.pdfdevice import PDFDevice
from pdfminer.converter import TextConverter
from io import StringIO
import os
import re



def F_update(pdf_paths,number_upd,dir):

    base_path = dir

    for i in pdf_paths:

        my_file =  i                                 
        log_file = "C:\Users\vagos\Desktop\trelovagos\text\databases\testnewafrica.txt"


        file2 = open("C:\Users\vagos\Desktop\trelovagos\text\databases\testnewafrica.txt" ,mode = 'w+',buffering = 1 ,encoding ='utf-8')
        rsrcmgr = PDFResourceManager()
        retstr = StringIO()
        codec = 'ascii'
        laparams = LAParams(char_margin = 35,word_margin = 2 ,line_margin = 0.3 ,all_texts = True)#detect_vertical = True)
        device = TextConverter(rsrcmgr, retstr, codec=codec , laparams=laparams)
        fp = open(i, 'rb')
        interpreter = PDFPageInterpreter(rsrcmgr, device)
        password = ""
        caching = True
        pagenos=set()

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

        text = retstr.getvalue()

        file2.write(text)
        file2.close()

        fp.close()
        device.close()
        retstr.close()

这比我想象的要难,使用正则表达式是解决这个问题的更实用的方法。