Python 将pdf转换成txt(不处理图片)

  上一篇文章中已经介绍了简单的python爬网页下载文档,但下载后的文档多为doc或pdf,对于数据处理仍然有很多限制,所以将doc/pdf转换成txt显得尤为重要。查找了很多资料,在linux下要将doc转换成txt确实有难度,所以考虑先将pdf转换成txt。

  师兄推荐使用PDFMiner来处理,尝试了一番,确实效果不错,在此和大家分享。

  PDFMiner 的简介:PDFMiner is a tool for extracting information from PDF documents. Unlike other PDF-related tools, it focuses entirely on getting and analyzing text data.有兴趣的同学请通过官网进行详细查看,通过PDFMiner中的小工具pdf2txt.py,便能将pdf转换成txt,而且仍保留pdf中的格式,超赞!

  阅读pdf2txt.py的源码,我们可以看到具体的实现步骤,为了以后能处理大规模的pdf文件,这里我们只提取出pdf转换成txt的部分,具体实现代码如下:

# -*- coding: utf-8 -*-
#-----------------------------------------------------
#   功能:将pdf转换成txt(不处理图片)
#   作者:chenbjin
#   日期:2014-07-11
#   语言:Python 2.7.6
#   环境:linux(ubuntu)
#        PDFMiner20140328(Must be installed)
#   使用:python pdf2txt.py file.pdf
#-----------------------------------------------------

import sys
from pdfminer.pdfinterp import PDFResourceManager,PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
#main
def main(argv) :
    #输出文件名,这里只处理单文档,所以只用了argv[1]
    outfile = argv[1] + ‘.txt‘
    args = [argv[1]]

    debug = 0
    pagenos = set()
    password = ‘‘
    maxpages = 0
    rotation = 0
    codec = ‘utf-8‘   #输出编码
    caching = True
    imagewriter = None
    laparams = LAParams()
    #
    PDFResourceManager.debug = debug
    PDFPageInterpreter.debug = debug

    rsrcmgr = PDFResourceManager(caching=caching)
    outfp = file(outfile,‘w‘)   #pdf转换
    device = TextConverter(rsrcmgr, outfp, codec=codec, laparams=laparams,
                imagewriter=imagewriter)  
    for fname in args:
        fp = file(fname,‘rb‘)
        interpreter = PDFPageInterpreter(rsrcmgr, device)     #处理文档对象中每一页的内容
        for page in PDFPage.get_pages(fp, pagenos,
                          maxpages=maxpages, password=password,
                          caching=caching, check_extractable=True) :
            page.rotate = (page.rotate+rotation) % 360
            interpreter.process_page(page)
        fp.close()
    device.close()
    outfp.close()
    return

if __name__ == ‘__main__‘ : main(sys.argv)

  下一步将尝试将pdf中的图片进行转换,可以通过http://denis.papathanasiou.org/2010/08/04/extracting-text-images-from-pdf-files/ 进行了解。

参考资料:

1.PDFMiner:http://www.unixuser.org/~euske/python/pdfminer/

Python 将pdf转换成txt(不处理图片),布布扣,bubuko.com

时间: 2024-12-19 22:49:40

Python 将pdf转换成txt(不处理图片)的相关文章

linux 下 pdf 转换成txt

pdf有转换,如果是非扫描的,转换很快,识别率100%,很多软件可以转:如果是扫描的,就比较麻烦需要用到OCR技术(文字识别). 在linux下: 依赖包  poppler-utils  tesseract tesseract-ocr-chi-sim 情况一:pdftotxt 命令 可以转换非扫描版,免费又方便,只是格式.字体都没了 情况二:pdftoppm + tesseracr 可以实现扫面版的转换 情况一操作 pdftotxt  name.pdf   new.txt 情况二操作 第一步:p

如何将PDF文件转换成TXT文档

相信大家都知道什么是PDF文件,可是在使用PDF文件的时候我们常常会碰到一个难题,就是将PDF文件转换成TXT或者Word文档进行编辑,今天就给大家分享一种简单的转换方法. 1.先打开手机,可借助手机上的工具--PDF转换器,可在应用市场上搜索下载. 2.打开PDF转换器,以PDF转TXT为例,点击"PDF转换"此页面,点击"PDF转换TXT". 3.再添加需要转换的PDF文件,点击"全部文件",可在这里找到手机里保存的PDF文件,然后进行添加.

pdf转换成可编辑的word转换器

头条号:近期有不少网友向我咨询有关PDF转换成可编辑的Word文档的软件,小Q认为网上虽然有很多类似的PDF转换成Word转换器,但是从性能以及转换效果来看,迅捷PDF转换成Word转换器免费版v6.0算是比较理想的选择,有需要的童鞋不妨尝试看看. pdf转换成word转换器是一款专业的PDF转Word工具软件,它能快速准确的将您PDF文档中的文字及图片提取出来,转换保存成Word格式,同时很好的让原有PDF中的文字/字体/大小/行间距等保持不变,图片也按照原始的排版布局还原,最大程度的还原原始

如何把PDF文件内容转换成TXT

PDF格式文档的兴起使得现在很多文档都用PDF格式进行传递一些文档资料内容,如果拿到这种格式的文档,需要用到里面的一些文本内容,有些人就会进行复制粘贴了,但是如果需要的文本内容比较多,显然一页一页的复制操作是很浪费时间的,如果要将PDF文本内容提取出来可以直接将文件转换为txt格式就可以了. 一般我们查看PDF文件都会用的Adobe Reader,这个不仅可以查看PDF文档的内容,也能将里面的文本内容单独提取出来.所以在需要里面文本内容的时候就不需要再用复制粘贴的方法了. 首先用Adobe Re

PDF如何在线转换成TXT

PDF如何在线转换成TXT免费版的,在如今的学习和工作中,PDF便携式文档使用的非常广泛,但是其不能剪切和编辑的毛病也很是让人头疼,今天在这里给大家介绍下PDF如何在线转换成TXT免费的方法,大家认真听哦. 搜索关键词迅捷PDF在线转换器,点开界面. 点开转换器首页,点击文档转换,在下拉框中找到PDF转TXT. 点击选择文件,弹出文件夹选项,选择你需要转换的PDF文件添加. 选择完文件后,点击开始转换. 文件转换需要一些时间,耐心等待转换进度完成. 转换完成后,可点选择直接打开,也可以立即下载在

简单快速将pdf转换成jpg的方法

如何将PDF转换成JPG呢?也许你将PDF转换成Word很轻松,但是到了PDF转换成JPG这里就要犹豫了,怎么转?网上找来找去还是PDF转换成JPG转换器,但是就为了一个格式下载一个软件,在工作中要遇到那么多的格式转换,那要下载多少个软件才行呢?别担心,这里小编教大家一个简单快速将pdf转换成jpg的方法. 迅捷PDF转换成JPG转换器是国家知名软件公司迅捷工作室研发而成,专门为上班一族打造的一款专业软件.它到底有怎样的优势呢? (一)它可以帮助您将PDF转换为的Word,PowerPoint,

将pdf转换成excel能用的转换软件

最近因为配合编辑部的工作,需要将手头上制作好的PDF格式文件转换成Excel格式,按照平常的习惯从网上找了一些PDF转换成Excel转换器,但是许多转换后要么就乱码.要么转换失败. 在我看来最为可靠的是使用迅捷PDF转换成Excel转换器,为什么这么说呢?因为在这个转换器自带的这项转换功能,能实现批量的PDF转换成Excel格式文件,够强大吧! 1.PDF文本能转换成哪几种格式? 目前,PDF转Excel转换器已经成功地集成了如下转换功能:文件转Word.文件转Excel.文件转PPT.文件转换

pdf转换成word转换器实战5.0客户端

pdf转换成word转换器软件特点: PDF转换成Word已经是非常常见的文件格式转换类型了,办公室用户或者是一些大学生可能会经常用到转换器进行此类转换.为了保证工作和学习的顺利进行,一定要选择一款质量过关的转换器,不仅能保证转换质量而且提高转换速度.转换器非常多可是要寻到一款有效的转换器并不简单,大家没有明确的目标,在网络世界中犹如浑水摸鱼,导致很多人下载了软件并没有达到所要转换的目标,白白浪费了时间.小编给大家推荐一款有效合适的转换器,那就是迅捷PDF转换器,根据小编的使用经验转换效果真的不

pdf转换成word文字版

最近很多朋友一直在问我怎么才能把pdf转换成word文字版.其实这个教程我前面也有提及的.但是没有说的那么明确.今天就在和大家说一次. 工具/原料 捷速OCR文字识别软件 电脑 方法/步骤 1 首先在电脑上打开我们要转换成word的文字PDF,对于图片的格式没有什么要求,基本上能够清晰点就可以了. 2 然后启动图像word转换工具,把我们需要转换的PDF直接拖进软件.操作方法如下图: 3 然后点击开始那个选项软件会自动开始工作.我们要做的就是等待. 4 最后大家看到有处理完成这个提示就证明已经转