2013-05-08 199 views
1

我在嘗試從Windows下的Sikuli保存屏幕截圖時遇到權限錯誤。那在做捕獲的代碼是:IO錯誤:[Errno 13]權限被拒絕

def CaptureScreenshot(self): 
    resultsDirectory = os.path.join('C','08 May 2013 11 34','myname.png') 
    screenshot = capture(self.screen) 
    print(screenshot) 
    shutil.move(screenshot,self.resultsDirectory) 

當我打印由capture返回的截圖路徑,我得到

D:\DOCUME~1\BUNNINGS\LOCALS~1\Temp\sikuli-scr-366782306192033926.png 

當我運行代碼,我得到這個錯誤:

Traceback (most recent call last): 
    File "__pyclasspath__/Tests/Tests.py", line 12, in tearDown 
    File "__pyclasspath__/Scripts/Screen.py", line 39, in CaptureScreenshot 
    File "C:\jython2.5.3\Lib\shutil.py", line 205, in move 
    copy2(src,dst) 
    File "C:\jython2.5.3\Lib\shutil.py", line 96, in copy2 
    copyfile(src, dst) 
    File "C:\jython2.5.3\Lib\shutil.py", line 52, in copyfile 
    fdst = open(dst, 'wb') 
IOError: [Errno 13] Permission denied: 'C\\08 May 2013 11 34\\myname.png' 

目標文件夾存在,並且myname.png是我試圖賦予圖像的新名稱。

我注意到目標文件夾的屬性設置爲「只讀」。這是造成這個問題嗎?我無法更改只讀屬性;當我嘗試時,它只是回到只讀。

回答

3

您的路徑中似乎有一個冒號在C後丟失。您現在正在嘗試寫入當前目錄的子目錄「C」中。

嘗試第二行變成:

resultsDirectory = os.path.join('C:','08 May 2013 11 34','myname.png') 
           ^
+0

謝謝。我糾正了錯誤,現在正在工作。 – Loganswamy 2013-05-08 04:26:27

+0

@Loganswamy您可以點擊Anthon答案旁邊的複選框將其標記爲正確的解決方案。 – 2013-05-08 17:45:20

相關問題