python -V 3.7

安装pip3 install pdfminer3k

程序代码:

# pip3 install pdfminer3kfrom pdfminer.pdfparser import PDFParser,PDFDocument
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LTTextBoxHorizontal,LAParams
from pdfminer.pdfinterp import PDFTextExtractionNotAllowed'''解析pdf 文本
'''# path = r'D:/JBK/2c.pdf'  # 这是多列的论文格式
# path = r'D:/JBK/55.pdf'  # 这是有页眉和表格和可见超链接的
path = r'D:/JBK/1234.pdf'  # 这是有不可见超链接的
# path = r'D:/JBK/120.pdf'  # 这是有\def parse():fp = open(path, 'rb') # 以二进制读模式打开#用文件对象来创建一个pdf文档分析器praser = PDFParser(fp)# 创建一个PDF文档doc = PDFDocument()# 连接分析器 与文档对象praser.set_document(doc)doc.set_parser(praser)# 提供初始化密码# 如果没有密码 就创建一个空的字符串doc.initialize()# 检测文档是否提供txt转换,不提供就忽略if not doc.is_extractable:raise PDFTextExtractionNotAllowedelse:# 创建PDf 资源管理器 来管理共享资源rsrcmgr = PDFResourceManager()# 创建一个PDF设备对象laparams = LAParams()device = PDFPageAggregator(rsrcmgr, laparams=laparams)# 创建一个PDF解释器对象interpreter = PDFPageInterpreter(rsrcmgr, device)# 循环遍历列表,每次处理一个page的内容for page in doc.get_pages(): # doc.get_pages() 获取page列表interpreter.process_page(page)# 接受该页面的LTPage对象layout = device.get_result()# 这里layout是一个LTPage对象 里面存放着 这个page解析出的各种对象 一般包括LTTextBox, LTFigure, LTImage, LTTextBoxHorizontal 等等 想要获取文本就获得对象的text属性,for x in layout:# if (isinstance(x, LTTextBoxHorizontal)):# print(x)if (isinstance(x, LTTextBoxHorizontal )):results = x.get_text()print(results)if __name__ == '__main__':parse()

如果文档中存在\,那么\后面的内容就不会识别。这时候可以用pymupdf,下一个文章讲一下它。

pdfminer识别pdf无法识别问题相关推荐

  1. 用软件如何识别pdf文字

    用软件如何识别pdf文字 近来得到一个好东西是可以辨认图画文字的软件--捷速ocr图画辨认软件,我也是一次偶然的时机遇上该软件.公司的电脑慢的跟驴相同,所以计划来个大扫除,将一些不需求的东西悉数删掉, ...

  2. C# pdf 转图片 and 创建百度AI文字识别应用(识别图片中的文字和数字)

    /// <summary>/// pdf 转图片/// </summary>public static void Turnpicture(){string str = &quo ...

  3. Cisdem PDF Converter OCR for Mac(PDF文字识别转换工具)

    Cisdem PDF Converter OCR Mac特别版是Mac平台上一款功能非常强大的PDF文字识别转换工具,用户可以通过Cisdem PDF Converter OCR for Mac将任何 ...

  4. 电子发票(PDF)识别信息提取(JAVA)电子专票(OFD)在线预览

    网上也有资料,有的只有jar包没有源码,整理好网上的资源,把源码开放出来. https://gitee.com/kanen/invoice 欢迎使用和交流. 内容介绍 电子发票(PDF)识别与验真 1 ...

  5. PHP PDF内容识别 抓取信息 方法

    PHP PDF内容识别 抓取信息 方法 PDF Parser 使用 PDF Parser 参考:http://www.pdfparser.org/ (注意:composer.json 更新 pdfpa ...

  6. matlab获取图片上的字,基于MATLAB图片中文字提取及识别.pdf

    基于MATLAB图片中文字提取及识别.pdf 数字图象处理 DigitalImageProgressing 基于MATLAB的图片中文字的提取及识别 邹浩,余龙,邹勇博,刘宇童,和振乔,李少梅 (西安 ...

  7. 教你手动编辑图像,提高ABBYY FineReader PDF 15识别准确性

    ABBYY FineReader PDF 15是一款智能程度相当高的OCR文字识别软件,不仅能识别PDF文档,而且还能识别难度更高的图像文件. 说到图像文件,虽然使用扫描仪可以让我们获取到精确度更高的 ...

  8. OCR识别PDF文件

    1现有解析pdf的方法 使用org.apache.pdfbox读取pdf,只能读取pdf中的文字,有些纸件扫描成的pdf文字会错乱,有些字还是图片的方式显示的,导致读取的内容不全,常常会获取不到想要的 ...

  9. PDF怎么识别提取文字?这个方法轻松提取

    随着信息技术的发展,很多小伙伴已经不满足于对PDF文档的简单浏览和阅读.相反,很多时候我们需要将一些PDF文档中的内容提取出来,但是由于PDF不像Word文档这样开放,不能随意编辑提取内容.那么小伙伴 ...

  10. 武汉大学 计算机学院 曹瑀,利用人体部位特征重要性进行行人再识别.pdf

    利用人体部位特征重要性进行行人再识别.pdf (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.90 积分 第42卷 第1期2017年1月武 汉 ...

最新文章

  1. ​专为初学者设计——最小的神经网络
  2. 11.typescript-元组
  3. PIC单片机精通_ADC左对齐与右对齐的数据读取问题
  4. 对于局部变量_对于SQL常用查询优化方法的整理
  5. 使用DispatcherTimer计时器
  6. python requests 代理ip_python requests 测试代理ip
  7. 支付宝基金收益灰色是什么意思?
  8. linux 11Gasm启动crs,11GR2重建CRS
  9. 综合计算机工时,计算机辅助工时定额制定与管理系统的研究与开发
  10. Spark SQL 之开窗函数
  11. html文字闪光效果,css实现字体闪烁效果
  12. canvas绘制图片时宽高2倍
  13. 如何更好的提问-在提问之前试试Stack Overflow、小黄鸭调试法
  14. Qt C++ 运算符重载详解
  15. vga接口和hdmi接口的区别
  16. keep T 不是 KG等级_keep的用法
  17. docker-compose 搭建habor
  18. 【蓝牙串口无线烧写程序】适用于STM32F405RG的Bootloader
  19. python中numpy.random.gamma()函数
  20. 【自动驾驶摸爬滚打路】自动驾驶仿真软件SCANeR 001初相识

热门文章

  1. Linux内核分析学习路线总结(内核人员必看)
  2. snipaste滚动截图方法_【软件工具】超强干货|不同级别的截图工具,快来按需领取吧...
  3. mysql 嵌入式linux版本_PHP专栏 : MySQL 数据库安装详细
  4. MongoDB下载安装踩坑实录
  5. 蓝筹股连环爆雷!这些蓝筹股哪些最容易爆雷?(最全名单)
  6. 软件开发流程——V模型
  7. 创建Win95 100M无盘工作站
  8. H5拖拽方法drag在VUE中的应用实例
  9. 小米蓝牙耳机持续白灯_小米蓝牙耳机air2怎么重置
  10. linux下修改yml脚本文件编码,Spring Boot 装载自定义yml文件