python_读取 doc,docx,pdf

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import docx

from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from cStringIO import StringIO

from win32com import client
import sys
reload(sys)
sys.setdefaultencoding(‘gb2312‘)

def readDocx(docxPath):
    fullText = []
    doc = docx.Document(docxPath)
    paras = doc.paragraphs
    for p in paras:
        fullText.append(p.text.strip())
    return ‘\n‘.join(fullText)
def readPdf(pdfPath):
    rsrcmgr = PDFResourceManager()
    retstr = StringIO()
    codec = ‘utf-8‘
    laparams = LAParams()
    device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
    fp = file(pdfPath, ‘rb‘)
    interpreter = PDFPageInterpreter(rsrcmgr, device)
    password = ""
    maxpages = 0
    caching = True
    pagenos=set()
    for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):
        interpreter.process_page(page)
    fp.close()
    device.close()
    str = retstr.getvalue()
    retstr.close()
    return str
def readDoc(docPath):
    fullText = []
    word = client.Dispatch(‘Word.Application‘)
    # 打开一个已存在的文件
    doc = word.Documents.Open(docPath)
    #print doc.Content
    #print text
    doc.SaveAs(‘c:/temp.txt‘, 2)
    # 关闭
    doc.Close()
    word.Quit()
    f=open(r‘c:/temp.txt‘,‘r‘)
    for line in f.readlines():
        #f len(line)!=line.count(‘\n‘):
        fullText.append(line.decode(‘gbk‘).strip())
    f.close()
    return ‘\n‘.join(fullText)
if __name__ == ‘__main__‘:
    #docxValue=readDocx(‘d:/1.docx‘)
    #print docxValue
    #pdfValue = readPdf(‘d:/3.pdf‘)
    #print pdfValue
    docValue = readDoc(‘d:/2.doc‘)
    print docValue
时间: 2024-10-06 06:05:36

python_读取 doc,docx,pdf的相关文章

JAVA实现word doc docx pdf excel的在线浏览 - 仿百度文库 源码

我们具体实现思路是这样的 首先下载并安装openoffice和swftools openoffice下载地址:http://www.openoffice.org/download/index.html swftools下载地址:http://www.swftools.org/download.html 本源码下载地址: 去除FlexPaper水印的下载地址:http://pan.baidu.com/s/1qWDfphU FlexPaper原版源码下载地址:http://pan.baidu.com

c#读取doc,pdf,ppt,txt文件

doc pdf ppt与 txt之间的转换 : 组件的作用一般是将文件读出成字符格式,并不是单纯的转换文件名后缀,所以需要将读出的东西写入txt文件 . 添加office引用 .net中对office中的word及ppt进行编程时,确保安装office时已经安装了word,ppt可编程组件(自定义安装时可查看)或者安装“Microsoft Office 2003 Primary Interop Assemblies” 安装后,在编程页面添加引用: 添加引用-com—microsoft power

超级顽固的流方式读取doc,docx乱码问题

因为工作中需要一个把doc或者docx的office文档内容,需要读取出来,并且也没展示功能.代码中第一考虑可能就是通过读取流方式,结果写了以后,各种乱码,百科的解决方案也是千奇百怪,第一点:可能是文档编码格式和项目编码格式不一致,需要重新再读取流时候,重新定义流的编码格式:第二点:可能是框架层面直接调用解析方式,但是框架封装没有声明编码格式:第三点:就是在转成流在重建字符串时候,需要声明编码格式.总之,就是编码格式不一致导致. 当然问题不止这么简单,如果是其他格式的话,可以通过编码格式解决,但

java读取txt/pdf/xls/xlsx/doc/docx/ppt/pptx

环境准备txt利用common-iopdf利用pdfbox剩下的用POI关于POI,读取xls没啥特别的,主要是读取doc和ppt,需要下载poi源代码,然后将poi-src-3.7-20101029.zip\poi-3.7\src\scratchpad\src下的所有文件copy到工程,或者自己封装个jar包jar包依赖 code如下:package test; import java.io.BufferedInputStream;import java.io.File;import java

用java读取多种文件格式的文件(pdf,pptx,ppt,doc,docx..)

本文通过开源pdfbox和poi进行处理多种文件格式的文本读入 1.需要的jar的maven坐标: <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.2</version> </dependency> <!-- ppt,xls,docx,pptx,xlsx-->

pdf及word文档的读取 pyPDF2,docx

#!python3 #-*- coding:utf8 -*- #PyPDF2可能会打不开某些pdf文档,也不能提取图片,图表或者其他媒介从PDF文件中.但是它能提取文本从PDF中,转化为字符. import PyPDF2 #以二进制方式 读模式打开一个pdf文件 pdfFileObj=open('e:\work\data_service.pdf','rb') #读取pdf文档 pdfReader=PyPDF2.PdfFileReader(pdfFileObj) #返回的是pdf文档的总页数 pr

IOS 使用webview 显示 doc/docx/xls/pdf等

在一款项目里添加阅读各种文档功能 那么对在线的文档或者是下载后的文档 进行阅读,比如 doc/docx/xls/pdf等文件 有两种方法总结如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1. - (void)viewDidLoad {     [super viewDidLoad];     webView=[[UIWebView alloc]initWithFrame

Python:读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误

Python 中可以读取 word 文件的库有 python-docx 和 pywin32.   优点 缺点 python-docx 跨平台 只能处理 .docx 格式,不能处理.doc格式 pywin32 仅限 windows 平台 .doc 和 .docx 都能处理 pywin32 这个库很强大,不仅仅可以读取 word,但是网上介绍用 pywin32 读取 .doc 的文章真不多,因为,真心不好用. 以下是 pywin32 读取 .doc 的代码示例,但是读取表格有问题,输出全是空,原因不

读写文件:excel、outlook、ppt、doc、pdf、xml

excel: 读: 1 from openpyxl.reader.excel import load_workbook #载入excel加载文件 2 3 wb = load_workbook(filename=self.path) # 载入 4 if self.wb!=None: 5 sheetnames = self.wb.get_sheet_names() # list 6 if len(sheetnames)!=0:#至少一个表格 7 for sheet in sheetnames: 8