Python输出PowerPoint(ppt)文件中全部文字信息的方法

yipeiwu_com5年前Python基础

本文实例讲述了Python输出PowerPoint(ppt)文件中全部文字信息的方法。分享给大家供大家参考。具体分析如下:

下面的代码依赖于windows com,所以必须在机器上安装PowerPoint才能用,可以将PPT文件中的所有纯文本信息进行输出到指定的文件,非常实用。

import win32com
from win32com.client import Dispatch, constants
ppt = win32com.client.Dispatch('PowerPoint.Application')
ppt.Visible = 1
pptSel = ppt.Presentations.Open("c:\\1.ppt")
win32com.client.gencache.EnsureDispatch('PowerPoint.Application')
f = file("c:\\1.txt","w")
slide_count = pptSel.Slides.Count
for i in range(1,slide_count + 1):
  shape_count = pptSel.Slides(i).Shapes.Count
  print shape_count
  for j in range(1,shape_count + 1):
    if pptSel.Slides(i).Shapes(j).HasTextFrame:
      s = pptSel.Slides(i).Shapes(j).TextFrame.TextRange.Text
      f.write(s.encode('utf-8') + "\n")    
f.close()
ppt.Quit()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

老生常谈python函数参数的区别(必看篇)

在运用python的过程中,发现当函数参数为list的时候,在函数内部调用list.append()会改变形参,与C/C++的不太一样,查阅相关资料,在这里记录一下。 python中id...

Python单元测试框架unittest简明使用实例

Python单元测试框架unittest简明使用实例

测试步骤 1. 导入unittest模块 import unittest 2. 编写测试的类继承unittest.TestCase class Tester(unittest.TestC...

利用Python的Flask框架来构建一个简单的数字商品支付解决方案

利用Python的Flask框架来构建一个简单的数字商品支付解决方案

作为一个程序员,我有时候忘了自己所具有的能力。当事情没有按照你想要的方式发展时,却很容易忘记你有能力去改变它。昨天,我意识到,我已经对我所出售的书的付款处理方式感到忍无可忍了。我的书完成...

Python后台管理员管理前台会员信息的讲解

问题:  1. 后台管理员只有一个用户: admin, 密码: admin  2. 当管理员登陆成功后, 可以管理前台会员信息.  3. 会员信息管理包含:...

让代码变得更易维护的7个Python库

随着软件项目进入“维护模式”,对可读性和编码标准的要求很容易落空(甚至从一开始就没有建立过那些标准)。然而,在代码库中保持一致的代码风格和测试标准能够显著减轻维护的压力,也能确保新的开发...