python读取pdf、doc、docx、ppt、pptx文件内容

这篇具有很好参考价值的文章主要介绍了python读取pdf、doc、docx、ppt、pptx文件内容。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用python读取文件,其中pdf、docx、pptx可以直接读,.ppt和.doc文件不能直接读,需要转换成.pptx和.docx文件,并且需要区分系统
如果是linux系统,请先安装组件

#doc2docx
yum install -y libreoffice-headless
yum install -y libreoffice-writer

# ppt2pptx
yum install epel-release -y
yum install libgdiplus -y
pip3 install aspose.slides

python代码如下:文章来源地址https://www.toymoban.com/news/detail-668601.html

import os


def read_pptx(fp):
    import pptx
    prs = pptx.Presentation(fp)
    for i, slide in enumerate(prs.slides):
        # if i == 1:  在这里可以指定提取ppt的具体页数
        for shape in slide.shapes:
            if shape.has_text_frame:
                text_frame = shape.text_frame
                print(str(i) + '页:' + text_frame.text)


def read_ppt(fp):
    import platform
    os_type = platform.system()
    if os_type == "Windows":
        import win32com.client as wc
        powerpoint = wc.Dispatch("PowerPoint.Application")
        wc.gencache.EnsureDispatch("PowerPoint.Application")
        powerpoint.Visible = 1
        ppt = powerpoint.Presentations.Open(fp)
        ppt.SaveAs(fp+"x")
        powerpoint.Quit()
    elif os_type == "Linux":
        import aspose.slides as slides
        with slides.Presentation(fp) as presentation:
            presentation.save(fp+"x", slides.export.SaveFormat.PPTX)
    read_pptx(fp+"x")

def read_docx(fp):
    import docx
    file = docx.Document(fp)
    print("段落数:" + str(len(file.paragraphs)))  # 段落数为13,每个回车隔离一段
    # 输出每一段的内容
    for para in file.paragraphs:
        print(para.text)

def read_doc(fp):
    import platform
    os_type = platform.system()
    if os_type == "Windows":
        import doc2docx
        doc2docx.convert(fp,fp+"x")
    elif os_type == "Linux":
        import subprocess
        subprocess.check_output(["soffice", "--headless", "–-invisible", "--convert-to", "docx", fp, "--outdir", fp+"x"])
    read_docx(fp + "x")


def read_pdf(fp):
    import pdfplumber
    pdfFile = open(fp,"rb")
    pdf = pdfplumber.open(pdfFile)
    for page in pdf.pages:
        text = page.extract_text()
        print(text)


# file_path = "*.pptx"
file_path = "*.ppt"
# file_path = "*.docx"
# file_path = "*.doc"
# file_path = "*.pdf"
file_extension = os.path.splitext(file_path)[-1].lower()
print("文件后缀:" + file_extension)
if file_extension == '.pptx':
    print("读取pptx文件")
    read_pptx(file_path)
elif file_extension == '.ppt':
    print("读取ppt文件")
    read_ppt(file_path)
elif file_extension == ".docx":
    print("读取docx文件")
    read_docx(file_path)
elif file_extension == ".doc":
    print("读取doc文件")
    read_doc(file_path)
elif file_extension == ".pdf":
    print("读取pdf文件")
    read_pdf(file_path)

到了这里,关于python读取pdf、doc、docx、ppt、pptx文件内容的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp 在线预览各种格式文件(支持doc, xls, ppt, pdf, docx, xlsx, pptx格式) 适用于小程序 (解决了真机调试可以打开,发布体验版打不开的问题)(可设置文件名)

    代码: 参考官方文档: uni.saveFile(OBJECT) @savefile | uni-app官网 uni-app,uniCloud,serverless https://uniapp.dcloud.net.cn/api/file/file.html#opendocument tips: 问题一: 打不开         1. 文件地址须保证能正常打开(在浏览器中尝试是否能预览或正常下载)         2.注意文件名最好为数字字母(非中文) 问题

    2024年02月05日
    浏览(61)
  • Java给文件加水印,支持.pptx,.doc,.docx,.xls,.xlsx,.pdf,.png,.jpg。

    office 相关格式文档的加密主要使用微软提供的Spire.Office for Java ,free部分有针对性每个类型的API说明和示例,请自行参考以下链接。下面也会附上我在项目中的实际工具类。 Spire.Office for Java | 专业的 Java Office 套件 | 创建、修改、转换、打印 Word/PowerPoint/PDF 文档 我的策略是

    2024年02月12日
    浏览(63)
  • Go如何自动解压缩包?如何读取docx/doc文件内容?

    在开发过程中,我们常常需要处理压缩包和文档文件。本文将介绍如何使用Go语言自动解压缩包和读取docx/doc文件。 压缩包格式 常见的压缩包格式有zip、gzip、bzip2等。在Go语言中,使用archive/zip、compress/gzip、compress/bzip2包可以轻松地处理这些格式的文件。 解压zip文件 使用arc

    2023年04月08日
    浏览(38)
  • Python实现将pdf,docx,xls,doc,wps链接下载并将文件保存到本地

    前言 本文是该专栏的第31篇,后面会持续分享python的各种干货知识,值得关注。 在工作上,尤其是在处理爬虫项目中,会遇到这样的需求。访问某个网页或者在采集某个页面的时候,正文部分含有docx,或pdf,或xls,或doc,或wps,或ofd,或xlsx,或zip等链接。需要你使用python自

    2024年02月16日
    浏览(52)
  • Python实现将pdf,docx,xls,doc,wps,zip,xlsx,ofd链接下载并将文件保存到本地

    前言 本文是该专栏的第31篇,后面会持续分享python的各种干货知识,值得关注。 在工作上,尤其是在处理爬虫项目中,会遇到这样的需求。访问某个网页或者在采集某个页面的时候,正文部分含有docx,或pdf,或xls,或doc,或wps,或ofd,或xlsx,或zip等链接。需要你使用python自

    2024年02月17日
    浏览(62)
  • vue - - - - - 在线预览常见文件格式 .doc, .docx, .xls, .xlsx,.pdf

    关于一些文件的在线预览,最简易的实现方式是什么呢? 写在前面 .png, .jpg, .jpeg 等图片格式 直接预览http/https地址 即可 .pdf 文件 直接预览http/https地址 即可 .doc, .docx, .xls, .xlsx 等类型文件,需要在预览地址之前拼接上 https://view.officeapps.live.com/op/view.aspx?src= .ofd 等类型文件,需

    2024年02月09日
    浏览(74)
  • Python 实现 PDF 到 Word 文档的高效转换(DOC、DOCX)

    PDF(Portable Document Format)已成为一种广泛使用的电子文档格式。PDF的主要优势是跨平台,可以在不同设备上呈现一致的外观。然而,当我们需要对文件内容进行编辑或修改,直接编辑PDF文件会非常困难,而且效果也不理想。将PDF文件转换为Word文档(doc、docx)再进行编辑是一

    2024年02月03日
    浏览(50)
  • 前端vue3实现本地及在线文件预览(含pdf/txt/mp3/mp4/docx/xlsx/pptx)

    (一)微软office免费预览( 推荐 ) 支持doc/docx/xls/xlsx/ppt/pptx等多种office文件格式的免费预览 (二)XDOC文档预览云服务  移动端和PC端无插件预览PDF、OFD、Word、WPS等多种格式文档 本地或内网预览需要借助插件实现,pdf、mp3、mp4等主要靠原生标签或浏览器自带功能,尽量减少

    2024年02月05日
    浏览(71)
  • vue实战--vue+elementUI实现多文件上传+预览(word/PDF/图片/docx/doc/xlxs/txt)

        最近在做vue2.0+element UI的项目中遇到了一个需求:需求是多个文件上传的同时实现文件的在线预览功能。需求图如下:     看到这个需求的时候,小栗脑袋一炸。并不知道该如何下手,之前的实践项目中也并没有遇到相似的功能。因此也废了一番功夫想要实现这样一个

    2024年01月23日
    浏览(77)
  • Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本

    本文对使用python读取pdf、word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结。 可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主要目标都是:方便提取文件中所有文本的实现方式。 这些库的更多使用方法,请到官方文档中查

    2024年02月13日
    浏览(114)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包