Python批量提取PDF文件中文本的脚本


Posted in Python onMarch 14, 2018

本文实例为大家分享了Python批量提取PDF文件中文本的具体代码,供大家参考,具体内容如下

首先需要执行命令pip install pdfminer3k来安装处理PDF文件的扩展库。

import os
import sys
import time

pdfs = (pdfs for pdfs in os.listdir('.') if pdfs.endswith('.pdf'))

for pdf1 in pdfs:
 pdf = pdf1.replace(' ', '_').replace('-', '_').replace('&', '_')
 os.rename(pdf1, pdf)
 print('='*30)
 print(pdf)
 
 txt = pdf[:-4] + '.txt'
 exe = '"' + sys.executable + '" "'
 pdf2txt = os.path.dirname(sys.executable)
 pdf2txt = pdf2txt + '\\scripts\\pdf2txt.py" -o '
 try:
 #调用命令行工具pdf2txt.py进行转换
 #如果pdf加密过可以改写下面的代码
 #在-o前面使用-P来指定密码
 cmd = exe + pdf2txt + txt + ' ' + pdf
 os.popen(cmd)
 #转换需要一定时间,一般小文件2秒钟足够了
 time.sleep(2)
 #输出转换后的文本,前200个字符
 with open(txt, encoding='utf8') as fp:
  print(fp.read(200))
 except:
 pass

来源:python小屋

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python  连接字符串(join %)
Sep 06 Python
python基础教程之基本数据类型和变量声明介绍
Aug 29 Python
Python实现的一个简单LRU cache
Sep 26 Python
Python字典数据对象拆分的简单实现方法
Dec 05 Python
python opencv之SURF算法示例
Feb 24 Python
Python Logging 日志记录入门学习
Jun 02 Python
Python实现通过继承覆盖方法示例
Jul 02 Python
Python的argparse库使用详解
Oct 09 Python
pandas去重复行并分类汇总的实现方法
Jan 29 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
Aug 12 Python
浅谈matplotlib默认字体设置探索
Feb 03 Python
python实现批量提取指定文件夹下同类型文件
Apr 05 Python
深入理解Django的中间件middleware
Mar 14 #Python
python批量设置多个Excel文件页眉页脚的脚本
Mar 14 #Python
浅谈python正则的常用方法 覆盖范围70%以上
Mar 14 #Python
Python使用matplotlib绘制多个图形单独显示的方法示例
Mar 14 #Python
Python使用matplotlib绘制余弦的散点图示例
Mar 14 #Python
使用Python从零开始撸一个区块链
Mar 14 #Python
Python使用matplotlib绘图无法显示中文问题的解决方法
Mar 14 #Python
You might like
PHPTree――php快速生成无限级分类
2018/03/30 PHP
firebug的一个有趣现象介绍
2011/11/30 Javascript
JQuery UI的拖拽功能实现方法小结
2012/03/14 Javascript
css3元素简单的闪烁效果实现(html5 jquery)
2013/12/28 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
JS禁用页面上所有控件的实现方法(附demo源码下载)
2015/12/17 Javascript
基于JS实现textarea中获取动态剩余字数的方法
2016/05/25 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
2016/05/31 Javascript
JS实战篇之收缩菜单表单布局
2016/12/10 Javascript
深入浅析Node.js单线程模型
2017/07/10 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
vue父子模板传值问题解决方法案例分析
2020/02/26 Javascript
Vue中watch、computed、updated三者的区别及用法
2020/07/27 Javascript
详解Java中String JSONObject JSONArray List转换
2020/11/13 Javascript
分享一个可以生成各种进制格式IP的小工具实例代码
2017/07/28 Python
教你学会使用Python正则表达式
2017/09/07 Python
python文件名和文件路径操作实例
2017/09/29 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
python利用ffmpeg进行录制屏幕的方法
2019/01/10 Python
python实现密码验证合格程序的思路详解
2020/06/01 Python
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
什么是三层交换,说说和路由的区别在那里
2014/09/01 面试题
大一学生的职业生涯规划书范文
2014/01/19 职场文书
宣传策划类求职信范文
2014/01/31 职场文书
企业指导教师评语
2014/04/28 职场文书
民主评议党员登记表自我评价
2014/10/20 职场文书
2014保险公司个人工作总结
2014/12/09 职场文书
2015年度公共机构节能工作总结
2015/05/26 职场文书
钢铁是怎样炼成的读书笔记
2015/06/29 职场文书
丧事主持词
2015/07/02 职场文书
安全生产隐患排查制度
2015/08/05 职场文书
《弟子规》读后感:知廉耻、明是非、懂荣辱、辨善恶
2019/12/03 职场文书
Apache POI的基本使用详解
2021/11/07 Servers
错误码NET::ERR_CERT_DATE_INVALID证书已过期解决方法?
2022/07/07 数码科技