意外とハマったのでメモ。
デスクトップのパスはPCやユーザーによってまちまちなので汎用的に取得する方法を記述します。
##環境
Python 2.7
Windows 7/8
##スクリプト
#coding:cp932
import os
desktop_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Desktop"
print desktop_path
実行結果:
C:\Users\foo\Desktop
##説明
os.getenv("???") で環境変数を取得できます。
デスクトップのパスそのものを格納した環境変数がないため、上のスクリプトでは環境変数の組み合わせでデスクトップのパスを作成しています。
##おまけ
マイドキュメントやピクチャ・・・等々も取得してみます
#coding:cp932
import os
desktop_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Desktop"
mydocument_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Documents"
mypicrure_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Pictures"
myvideo_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Videos"
mymusic_path = os.getenv("HOMEDRIVE") + os.getenv("HOMEPATH") + "\\Music"
if os.path.exists(desktop_path):
print "デスクトップ:" + desktop_path
if os.path.exists(mydocument_path):
print "ドキュメント:" + mydocument_path
if os.path.exists(mypicrure_path):
print "ピクチャ:" + mypicrure_path
if os.path.exists(myvideo_path):
print "ビデオ:" + myvideo_path
if os.path.exists(mymusic_path):
print "ミュージック:" + mymusic_path
実行結果:
デスクトップ:C:\Users\foo\Desktop
ドキュメント:C:\Users\foo\Documents
ピクチャ:C:\Users\foo\Pictures
ビデオ:C:\Users\foo\Videos
ミュージック:C:\Users\foo\Music