文章目录

  • 一、环境配置
  • 二、代码实现
  • 三、代码实现结果

一、环境配置

在实现转换之前需要我们配置好相关环境配置:

如果您是Python3.X版本的话,需要安装pdfminer.six 第三方库

pip install pdfminer.six

如果您是Python2.X版本的话,需要安装pdfminer.six 第三方库

pip install pdfminer3k

方法一:如果您有pycharm这个软件,那么我们的环境配置就十分简单了

step1:点开【文件】----->选择【设置选项】

step2:进入【设置】后点开【项目】----->选择【Python解释器】,点击左上方的那个【+】号

step3:进入【+】后搜索您想要的【第三方库名称】,因为我的是Python3.x版本,所以需要选择pdfminer.six版本,然后点击【安装软件包】,就成功了。

方法二:去官网下载安装包,但是由于我这里没有使用,所以如果您需要的话可以自行去百度自取安装方法。

二、代码实现

import os
import re
from pdfminer.converter import LTChar, TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFTextExtractionNotAllowed
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import PDFPageAggregator
from pdfminer.layout import LAParams, LTTextBox
from io import StringIO
from io import open# 读取pdf文件文本内容
def read(path):parser = PDFParser(path)doc = PDFDocument(parser, '')parser.set_document(doc)if not doc.is_extractable:raise PDFTextExtractionNotAllowedelse:# 创建PDf 资源管理器 来管理共享资源rsrcmgr = PDFResourceManager()# 创建一个PDF聚合器,包含资源管理器与参数分析器laparams = LAParams()device = PDFPageAggregator(rsrcmgr, laparams=laparams)# 创建一个PDF解释器对象interpreter = PDFPageInterpreter(rsrcmgr, device)# 循环遍历列表,每次处理一个page的内容page0 = ''for i, page in enumerate(PDFPage.create_pages(doc)):interpreter.process_page(page)print("START PAGE %d\n" % i)if page is not None:interpreter.process_page(page)print("END PAGE %d\n" % i)# 接受该页面的LTPage对象layout = device.get_result()print(layout)# 这里layout是一个LTPage对象,里面存放着这个 page 解析出的各种对象# 包括 LTTextBox, LTFigure, LTImage, LTTextBoxHorizontal 等line0 = ''for x in layout:if isinstance(x, LTTextBox):line0 = line0 + x.get_text().strip()page0 = page0 + line0return page0  # 返回pdf文件中所有提取到的文本内容if __name__ == '__main__':
#PDF文件所在的路径.注意:一定要将Python文件与PDF文件放在同一个目录内,否则代码不能成功运行path = 'C:\pycharm'     pdfList = os.listdir(path)# 批量读取存储pdf_num = 0for li in pdfList:try:pdffile = open(path + '/' + li, "rb")content = read(pdffile)except:continuestr = re.sub('.pdf', '.txt', li)#输出的TXT文件,生成out.txt文件file1 = 'out' + str  with open(file1, 'w+', encoding='utf8') as f:f.write(content)pdf_num = pdf_num + 1print("DONE:" + str)print('number of done-article:', end="")print(pdf_num)

三、代码实现结果


代码成功实现之后,会生成一个out.txt文件,里面就是提取PDF的内容。
(由于我这个之前已经提取过了,所以说它生成的是out1.txt文件)

Python实现PDF转换为TXT相关推荐

  1. 如何用python将pdf转换为txt、docx、excel

    利用python的pdfplumber库可以实现转换,一些常用的方法 .extract_text() 用来提页面中的文本,将页面的所有字符对象整理为的那个字符串 .extract_words() 返回 ...

  2. 如何把pdf转换为txt文档,pdf转txt的好方法

    如何把pdf转换为txt文档,pdf转txt的好方法.txt文档是每个电脑都自带的文字编辑工具.而pdf文件的缺点就是在于文件本身无法进行编辑.修改.当pdf文件中的内容产生错误时,就需要将pdf文件 ...

  3. Word处理控件Aspose.Words功能演示:在 Python 中将 PDF 转换为 JPG

    PDF文件以文档.发票.收据.文章等形式随处可见.它是打印和共享文档最方便的格式之一.在某些情况下,您必须将 PDF 文件转换为JPG图像以生成缩略图或嵌入到您的前端应用程序中.为此,本文介绍了如何在 ...

  4. 扫描的图片PDF转换为txt

    虽然pdf文档在诺基亚E61上能看,不过,扫描的图片的pdf缩放貌似不管用,放大1000%还是看不清楚. 以下是我尝试把pdf转换为txt的过程: 1,扫描的pdf不能直接用转换工具转换为txt的,必 ...

  5. Python解析pdf转为TXT格式

    #完成pdf到TXT转变了,无法完成TXT到Excel转变import xlwt # 写入文件 import xlrd # 打开excel文件 from xlutils.copy import cop ...

  6. 如何使用Python将PDF转换为Word文档?

    PDF是一种常用的文件格式,用于共享和打印文档.但是,在某些情况下,PDF 文件会转换为 Word DOCX或DOC格式以解析文本或使文档可编辑.对于此类场景,本文介绍了如何使用 Python 将 P ...

  7. 三招教您pdf转换为txt

    在很多办公过程中,我们需要将PDF文件转换为TXT格式,从而提高工作效率.那么,为何要将PDF文件转换为TXT格式呢?首先,将PDF文件转换为TXT格式方便文本编辑和修改,PDF文件是一种静态文件格式 ...

  8. pdf转换成html python,在Python中将pdf转换为html

    Python 2.6 我试图解析我的pdf文件,其中一种方法是将其转换为html并提取标题和段落. 所以,我尝试了pdf2htmlEX,它将我的pdf转换成html格式,而不干扰我的pdf格式...到 ...

  9. linux pdf to txt,PDF转换为TXT

    手上有一批pdf的文件大约6万份需要转成txt,尝试了很多方法.列出来供参考: 1. 利用付费软件转换 使用了迅捷PDF转换器,买了永久会员,该转换方法的好处是操作简单,缺点在于免费一次只能转5页,买 ...

最新文章

  1. 工艺仿真软件_【技术简讯】电解抛光仿真软件Elsyca EPOS技术简介
  2. 重磅!阿里巴巴工程师获得 containerd 社区席位,与社区共建云时代容器标准
  3. 记录爬取信用中国,里面的行政许可内容,行政处罚,守信激励的内容,并以excel形式显示
  4. netbeans 定制代码_将NetBeans代码模板弯曲到我的意愿
  5. vsftp 虚拟用户测试
  6. MaskFusion:惊艳的结合实例感知、语义分割、动态追踪的SLAM系统
  7. 红外遥控c语言,NEC协议红外遥控器
  8. HNU 实验五 猴导师
  9. 电信基站大区对应表_铁塔基站直流电能表 直流计量表
  10. 连接共享打印机0x0000011b win10
  11. 空间信息产业的八大极客技术
  12. 一键生成自签名证书,为内网IP配置HTTPS访问来使用navigator.getUserMedia录音
  13. git commit --amend 的使用记录
  14. dns性能测试软件,开源dns软件之-mydns和bind性能测试与比较
  15. 今日头条视频如何收益
  16. thinkadmin关联查询
  17. elasticsearch7.1的一些自问自答
  18. Ural1671 Anansi's Cobweb 并查集
  19. 记一次面试准备(续上)
  20. 计算机运行命令如何关闭应用程序,如何禁止电脑中某些程序的运行

热门文章

  1. 网易云信IM即时通讯PHP接口开发
  2. 使用容联云通信实现发送验证码
  3. php版本管理工具,GVM - Go 的多版本管理工具,使用介绍
  4. Win11宽带连接错误651如何解决?
  5. 理解 Web 3 —— 用户控制的互联网
  6. QCA-WIFI如何编译IPQ8074代码
  7. [Python][sklearn] 使用from sklearn.neighbors import NearestNeighbors计算相似度
  8. 大屏:页面在不同比例屏幕的显示适配与字体随屏幕改变而改变(字体随屏幕分辨率改变自适应的问题)
  9. 【数学建模】多元回归分析模型(评价与决策)
  10. python selenuim自动签到京东网页版