首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python | 从 PDF 中提取文本内容

Python | 从 PDF 中提取文本内容

作者头像
PyStaData
发布2020-07-21 10:59:13
2.9K0
发布2020-07-21 10:59:13
举报
文章被收录于专栏:PyStaDataPyStaData

前言

本来打算推一篇如何使用 Python 从 PDF 中提取文本内容的文章,但是因为审核原因,公众号上发不出来。尝试排查了一个小时,还是没有搞定,索性就放弃挣扎了。我在这里放出来文章的第一部分,如果有兴趣,可以前往我的 Github 或者码云上查看全文。

Github 访问:https://github.com/GangLi-0814/PyStaData/blob/master/Python_for_Research/Exporting_Data_from_PDFs/Exporting_Data_from_PDFs.md

码云访问:https://gitee.com/mudaozzz/PyStaData/blob/master/Python_for_Research/Exporting_Data_from_PDFs/Exporting_Data_from_PDFs.md


正文

PDF(Portable Document Format),译作便携式文档格式,是一种用独立于应用程序、硬件、操作系统的方式呈现文档的文件格式。PDF 文件通常混合了矢量图形、文本和位图,其基本内容包括:文本存储为内容字符串、由图形和线条组成的用于说明和设计的矢量图形、由照片和其他类型的图片组成的位图。这是 百科-PDF 的解释。

结合自己的经验,我觉得常见的 PDF 文件可以分为两类:一种是文本转化而成(Text-Based),这种文件通常可以直接复制和粘贴;另一种是扫描文件而成(Scanned),比如影印书籍、插入图片制成的文件。依据这个划分,将 Python 中处理 PDF 文件的第三方库可以简单归类:

  • Text-BasedPyPDF2,pdfminer,textract,slate 等库可用于提取文本;pdfplumber,camelot 等库可用来提取表格。
  • Scanned:先将文档转为图片,再利用 OCR(光学字符识别)提取内容,如 pytesseract 库;或者采用 OpenCV 进行图像处理。

上述大部分是第三方库,所以需要先进行安装:

$pip install PyPDF2
$pip install pdfminer
$pip install pdfminer.six
$pip install textract
$pip install slate
$pip install pdfplumber
$pip install camelot
$pip install pdf2image
$pip install pillow
$pip install pytesseract

接下来,我们就分别使用上面提到的方法,分别看看对两类文档的处理。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PyStaData 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 正文
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档