我使用win32com来处理Python中的office文档。 没有办法知道对象在win32com中有什么方法。 (通常,我们可以在Python中通过DIR(OBJ)获取属性或方法) 因此,如果我们想知道我的powerpoint文档有哪些属性或方法,只需查看MSDN
但是,我有一个包含大量对象的powerpoint文件。 但我不知道它的名称或类型。
例如,当我想访问powerpoint中的文本时,我可以使用Presentation.Slide.Textframe.TextRange.Text
来访问它。
配方怎么样?如果我想访问它? 无论如何,当我在我的powerpoint文件中的对象上单击鼠标,然后显示该对象的类型是什么?
提前谢谢大家。
答案 0 :(得分:1)
对于您的第一个问题,您希望使用MakePy实用程序创建早期绑定对象,以便您可以内省它们(即按Tab键并查看IDE中的所有方法)。它将减少95%的MSDN搜索
最简单的方法是转到PythonWin(与win32com一起安装)并转到Tools> COM Makepy Utility并选择您要使用的COM库(在您的情况下,它类似于'Microsoft PowerPoint 14.0 Object Library')。让这个运行,你就完成了。这也被描述为here。
对于你的第二个问题,大卫指出大多数对象都是形状。运行MakePy实用程序后,您将能够看到整个PP对象模型。快速搜索帮助我找到了如何通过点击选择活动形状。
import win32com.client
app = win32com.client.Dispatch("PowerPoint.Application")
selectedShape = app.ActiveWindow.Selection.ShapeRange(1)
现在,您可以使用selectedShape来查找有关它的所有信息。