python:pdf转文字(在线和本地文档)
在线文档:
#encoding=utf-8
from urllib.request import urlopen
from pdfminer.pdfinterp import PDFResourceManager, process_pdf
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from io import StringIO
from io import opendef readPDF(pdfFile):rsrcmgr = PDFResourceManager()retstr = StringIO()laparams = LAParams()device = TextConverter(rsrcmgr, retstr, laparams=laparams)process_pdf(rsrcmgr, device, pdfFile)device.close()content = retstr.getvalue()retstr.close()return contentpdfFile = urlopen("http://pythonscraping.com/pages/warandpeace/chapter1.pdf")
outputString = readPDF(pdfFile)
print(outputString)
pdfFile.close()
本地文档:
# -*-coding:utf-8-*-
import sys
import importlib
importlib.reload(sys)from 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 文本,保存到txt文件中
'''path = r'C:\\Users\Administrator\Desktop\tlcl-en-cn.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)):with open(r'C:\\Users\Administrator\Desktop\aa.txt', 'a') as f:results = x.get_text()print(results)# f.write(results + '\n')if __name__ == '__main__':parse()
python:pdf转文字(在线和本地文档)相关推荐
- python语音在线编辑-Python:语音处理,实现在线朗读RFC文档或本地文本文件
本文主要讲解如何使用python来实现将文本转为语音,以一个小例子为例,写了一下用pyTTS来朗读本地方件或在线朗读RFC文档,当然也可以修改一下,做成在线朗读新闻之类的,另本来想实现一个读中文小说的 ...
- Python:语音处理,实现在线朗读RFC文档或本地文本文件
本文主要讲解如何使用python来实现将文本转为语音,以一个小例子为例,写了一下用pyTTS来朗读本地方件或在线朗读RFC文档,当然也可以修改一下,做成在线朗读新闻之类的,另本来想实现一个读中文小说的 ...
- python中文朗读_Python:语音处理,实现在线朗读RFC文档或本地文本文件
本文主要讲解如何使用python来实现将文本转为语音,以一个小例子为例,写了一下用pyTTS来朗读本地方件或在线朗读RFC文档,当然也可以修改一下,做成在线朗读新闻之类的,另本来想实现一个读中文小说的 ...
- nopi word to html,C# 基于NPOI+Office COM组件 实现20行代码在线预览文档(word,excel,pdf,txt,png)...
由于项目需要,需要一个在线预览office的功能,小编一开始使用的是微软提供的方法,简单快捷,但是不符合小编开发需求, 就另外用了:将文件转换成html文件然后预览html文件的方法.对微软提供的方法 ...
- 【板栗糖GIS】怎么将网络上只能在线预览文档另存为pdf(插件篇)
怎么将网络上只能在线预览文档另存为pdf(插件篇) 目录 1.使用插件,这里推荐FireShot,好用免费 2.安装该插件的方式 3.打开在线预览文档的网址 4.点击插件-截取整个页面并且-另存为pd ...
- pdf.js在线查看(文档流/地址)
pdf.js在线查看(文档流/地址) 工作中需要在移动端在线查看pdf文件,但由于pdf文件存放在第三方的服务器中,由于各种原因无法直接返回pdf文件地址给前台,后来确定返给前台是一个base64的流 ...
- html怎么转换到百度,类似百度文库在线预览文档flash版(支持word、excel、ppt、pdf)+在线预览文档html版...
类似百度文库在线预览文档flash版(支持word.excel.ppt.pdf)+在线预览文档html版 (1).将文档转换为html,只支持支持office文档 (2).将文档转换为flash,实现 ...
- Python使用标准库zipfile提取docx文档中所有图片
清华科技大讲堂免费直播课预告: 免费直播课|Python数据可视化与科学计算可视化案例分享,5月28日晚20:00-21:30 ============ 哔哩哔哩网站免费视频观看地址: 董老师在哔哩哔 ...
- OpenOffice在线预览文档
使用OpenOffice在线预览文档 开发中遇到了一个需求,需要在线预览word文档,excel表格,pdf等等文件,于是经过一圈Google,发现了这个工具,openoffice会把文档转为pdf文 ...
最新文章
- 2020年 | 云计算发展的5大趋势
- sql 注射_基本注射/资格赛,范围
- [读码时间] 完美拖拽
- [Winodows Phone 7控件详解]Silverlight toolkit for Windows Phone 7.1控件-5
- 拼多多开除即将拿到股票的安全大佬;虾米音乐将永久关停;GitHub 解禁伊朗开发者使用权
- bzoj1179[Apio2009]Atm
- mysql 5.0 慢日志_MySQL的慢查询日志
- 宏晶STC单片机使用STC-ISP串口烧录失败的原因与解决方法汇总
- 《算法笔记》9.7 堆
- 《Python编程从入门到实践 第二版》第十六章练习
- 北京城市总体总体规划 下载_总体表现
- HDU 6438 Buy and Resell (优先队列 or 贪心)
- java 外码 内码_什么是汉字的内码、外码、交换码、字形码?
- Window系统 cd命令
- 学习spring英文官方文档方法
- win11 跳过检测直接升级
- php 时间插件,PHP日期时间函数 - Discuz!-插件 - Discuz! 官方站 - Powered by Discuz!
- 【HUI】AccordionMenu 手风琴菜单(基于jQuery)
- Cannot find module coa/compile.js
- (转)it界的大师手笔