python使用win32com的心得
python可以使用一个第三方库叫做win32com达到操作com的目的,</span> 我是安装了ActivePython的第三方库,从官网下载了安装包,该第三方库几乎封装了所有python下面的win32相关的操作,例如win32api,win32gui等等,可以说是比较齐全的了,下载地址可以自行百度获取。 Now, how does one investigate the detail of each object? For example, how does one access the name of a folder? Firstly, it helps to know the interface that the object exposes, and this information can be found in several places: Hopefully, however, the object that you are accessing is known well enough by PythonWin to permit some kind of attribute or method completion on it. You should only need to resort to the above when more detailed knowledge about a method or attribute is required. You can also try something like this: The name of a folder can be accessed as follows: 我就是安装的时候点的太快,结果忘记了路径,重新点击安装,记下了路径。
主要是有个项目可能要用到ppt转换成视频的功能。 之后在想使用com操作excel还有word,ppt的时候,相信大部分人跟我一样,都是搜索python如何操作ppt,或者win32com操作office之类的搜索语句, 搜索完毕之后,点进去之 后,几乎都直接是代码了,我觉得这样看得我云里雾里的,如果想做些其它操作都做不到,我当时的想法是想知道这些com的操作,究竟在哪里可以查找的到,因 为网上只是有限的几个操作,注入往ppt添加图片,或者doc转成pdf之类的,而实际上的office的com操作时不止这些函数的,那么我们怎么知道 其它的api呢?这样子我们就可以脱离网上的代码,自己编写com代码了。
一番查找,谷歌之后,在一个网页上终于找到了答案:
Querying Interfaces
dir(object.__class__)
object.Name # Where object refers to a folder.
</span>
__author__ = 'zxc' import win32com.client import time import os ppSaveAsWMV = 37 # only for windows platform and with the microsoft office 2010 or above,it needs the library win32com def cover_ppt_to_wmv(ppt_src,wmv_target): ppt = win32com.client.Dispatch('PowerPoint.Application') presentation = ppt.Presentations.Open(ppt_src,WithWindow=False) presentation.CreateVideo(wmv_target,-1,4,720,24,60) start_time_stamp = time.time() while True: time.sleep(4) try: os.rename(wmv_target,wmv_target) print 'success' break except Exception, e: pass end_time_stamp=time.time() print end_time_stamp-start_time_stamp ppt.Quit() pass if __name__ == '__main__': cover_ppt_to_wmv('d:\\python\\demo.ppt','d:\\python\\demo.wmv')
</span>