首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python从pdfs中提取特定文本

使用python从pdfs中提取特定文本
EN

Stack Overflow用户
提问于 2022-06-30 03:31:42
回答 1查看 347关注 0票数 0

我尝试过不同的python库来从pdfs中提取特定的文本,我必须从这个pdf中提取标题pdf1下的文本,我必须将从例1开始的文本提取为菱形粗体。

下一个pdf包含不同格式的pdf2的数据。在这个pdf中,我必须从历史提取数据到检查,然后从检查到调查与历史和调查作为一个excel文件中的列和相应的数据行。python regex不能满足这个条件,因为每种pdf格式都是不同的,我们需要来自不同pdfs的不同类型的文本。

除了这些类型的pdf之外,我还有不同类型的pdfs来处理,我尝试过不同的python库,比如pdfminer、pdfplumber、PyMUPDF、pytesseract、these、GROBID,

样本pdf:样本pdfs

代码1

代码语言:javascript
复制
import pdfplumber
import docx

file='Book_EM-Cases-Digest-Vol-2-Pediatric-Emergencies (1).pdf'

pdf=pdfplumber.open(file)

for page in pdf.pages:
    text=page.extract_text()

代码2

代码语言:javascript
复制
import fitz

file='Book_EM-Cases-Digest-Vol-2-Pediatric-Emergencies (1).pdf'


docum=docx.Document()
with fitz.open(file) as doc:
    for page in doc:
        text=page.get_text()

以上代码将提取整个页面的文本。但我想要具体的短信。我知道我们也可以使用python regex来完成这一任务,但是我也有各种不同的pdfs,对于所有pdfs都很难使用python regex。

EN

回答 1

Stack Overflow用户

发布于 2022-09-26 05:37:45

使用图书馆PyMuPDF:-

  1. 使用Page.get_text('dict')查找页面块的坐标
  2. 您将得到所需文本的坐标-> rect
  3. 现在用于提取文本Page.get_text(clip=rect,sort=False)。在这里,rect是要提取的矩形框(文本)的坐标。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72810023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档