首页 > 解决方案 > 使用 PDF 阅读器获取文本?

问题描述

当我阅读 pdf 时,我怎样才能只得到这个简单的文本?

CLSAI10608

此代码始终以CLXXXXXXXX, LEN = 10.

代码:

import PyPDF2
file = open('document.pdf', 'rb')
pdfreader = PyPDF2.PdfFileReader(file)
pageobj = pdfreader.getPage(0)
print(pageobj.extractText())

输出:

输出

标签: pythonpdfpypdf2pdf-reader

解决方案


所以我想出的正则表达式模式搜索以CL8 个非空白字符开头的东西。regex101.com提供了方便的解释。

import re

string = r"""Detalle

Total

4040CL02

  Correccion de BL

CLSAI10608LV-PASSERO V0008-MBL : ISGA0F000

47.020"""

match = re.search(r"[C][L]\S{8}", string)
if match:
    code = match.group()
    print(code)

输出:CLSAI10608

所以你想stringpageobj.extractText().


推荐阅读