windows COMオブジェクトを操作する

win32allモジュールの中のwin32com.clientは、windowsのCOM(Component Object Model)オブジェクトを操作する拡張モジュール。
Python Win32 Extensions(win32all)
http://starship.python.net/crew/mhammond/win32/Downloads.html
コレを使うことでWSHのように、オートメーション機能を持ったCOMオブジェクトをPythonスクリプトから制御することができる。
IEExcelの作業を自動化するスクリプトなんかを書くときに便利。
(当然のことながらwin32comはwindows依存。)

>>> import win32com.client
>>> com = win32com.client.Dispatch("WScript.Shell")
>>> com.Run("notepad.exe")	#ノートパッド(メモ帳)の起動
0
    
参考:第5回 WshShellオブジェクトの詳細(1) http://www.atmarkit.co.jp/fwin2k/operation/wsh05/wsh05_01.html

特殊フォルダのパスを得る

WScript.ShellオブジェクトではSpecialFoldersプロパティを得ることができる。
このプロパティはwindowsの特別なフォルダ(デスクトップやマイドキュメントなど)のパスを得ることができる。

>>> import win32com.client
>>> com = win32com.client.Dispatch("WScript.Shell")
>>> com.SpecialFolders("MyDocuments")		#マイドキュメントのパスを取得
u'C:\\My Documents'
>>> com.SpecialFolders("Favorites")		#「お気に入り」フォルダのパスを取得
u'C:\\WINDOWS\\Favorites'
>>> com.SpecialFolders("Recent")		#「最近使ったファイル」のパスを取得
u'C:\\WINDOWS\\Recent'

windowsの使い捨てスクリプトを書くときに非常に便利。
参考:1.特殊フォルダの取得 ――SpecialFoldersプロパティ――
http://www.atmarkit.co.jp/fwin2k/operation/wsh06/wsh06_01.html