1.升级Python

之前win10 x64操作系统上安装的是python3.7.0版本(此版本也能进行本文的工作)。出于后续识别图片中文字的需要,还是将其升级到了python 3.8版本。

Python官方下载地址
并不用卸载旧的 python3.7.0版本,在官网下载python-3.8.10-amd64.exe文件后,安装,将安装目录添加至Path环境变量。同时屏蔽(或删除)之前 python3.7.0版本的环境变量即可。
在这里插入图片描述
重启PC,新的环境变量生效。

2.使用Python识别PDF中字符、文字

声明: 所使用的PDF不能是图片扫描件或者是直接由图片生成的PDF,否则无法识别。PDF文件中的文字必须满足鼠标可拖选高亮、且可复制。

2.1 依赖模块安装

先安装pdfplumber:

pip install pdfplumber

第二个是fitz, 它是pymupdf中的一个模块,pip轻松安装。

pip install pymupdf

2.2 文字信息提取思路

A)先用pdfplumber打开一个 PDF 文件。
B)获取指定的页,例如page = pdf.pages[0]便是获取第1页。或者遍历所有页。
C)利用.extract_text()方法提取当前页的文字。
在这里插入图片描述

2.3 代码案例

import pdfplumber
file_path = r’C:\Users\Curry\Desktop\1234.pdf’
with pdfplumber.open(file_path) as pdf:
page = pdf.pages[0]
print(page.extract_text())

2.4 表格信息提取

提取单个表格与提取单页文字代码类似,用.extract_table().

在这里插入图片描述

要注意的是.extract_table()默认提取指定页面第一个表格,如需提取当前页面的多个表格,则使用.extract_tables()。

import pdfplumber
file_path = r'C:\xxxx\12345.PDF'
with pdfplumber.open(file_path) as pdf:
    page = pdf.pages[0]
    print(page.extract_table())

注:参照https://blog.csdn.net/weixin_39599081/article/details/111196131

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐