赞
踩
ppt是日常办公常用的文档之一,我们有时候有很多无用的劳动力都浪费在重复的工作里面。有没有办法用python帮忙呢?
pip install python-pptx
相关文档
链接: ppttx文档.
其中slides是页面
from pptx import Presentation
prs = Presentation()
title_slide_layout = prs.slide_layouts[0]
slide = prs.slides.add_slide(title_slide_layout)
title = slide.shapes.title
subtitle = slide.placeholders[1]
title.text = "Hello, World!"
subtitle.text = "python-pptx was here!"
prs.save('test.pptx')
import win32com from win32com.client import Dispatch, constants ppt = win32com.client.Dispatch('PowerPoint.Application') ppt.Visible = 1 pptSel = ppt.Presentations.Open("E:\\python\\scripts\\pptx\\21.pptx") win32com.client.gencache.EnsureDispatch('PowerPoint.Application') f = open("E:\\python\\scripts\\pptx\\2.txt","w",encoding ='utf-8') slide_count = pptSel.Slides.Count for i in range(1,slide_count + 1): shape_count = pptSel.Slides(i).Shapes.Count print("第"+str(i)+"页的元素个数"+str(shape_count)) #for j in range(1,shape_count + 1): j =1 if pptSel.Slides(i).Shapes(j).HasTextFrame: s = pptSel.Slides(i).Shapes(j).TextFrame.TextRange.Text if s=="": s = pptSel.Slides(i).Shapes(2).TextFrame.TextRange.Text f.write(s + " | 第" +str(i)+"页\n") #fileObject.write(string).encode('utf-8') f.close() ppt.Quit()
== 注意这个导出的方法要求每个页面中,标题的元素位置排序是最后一个 ==
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。