2015-01-02 38 views
1

我想implementate在Python腳本在Take a screenshot via a python script. [Linux]提供瞭解決方案:進口的QApplication失敗沒有錯誤(python3)

from PyQt5.QtWidgets import QApplication 
app = QApplication([]) 
screen = app.primaryScreen() 
screenshot = screen.grabWindow(QApplication.desktop().winId()) 
screenshot.save('/tmp/screenshot.png') 

運行此代碼巨蟒只是停止工作,不產卵一個錯誤。

[email protected] /srcpython/fod 
Python 3.2.5 (default, Jul 28 2014, 01:44:48) 
[GCC 4.8.3] on cygwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> from PyQt5.QtWidgets import QApplication 

[email protected] /srcpython/fod 

模塊PyQt5已安裝,但這些都是.dll文件。通常,當我安裝模塊時,應該有源文件。這些dll文件應該是對Qt5的綁定,我通過cygwin dev安裝程序安裝了這些文件。這兩個安裝中的一個安裝可能有些不正確,但我嘗試了很多重新安裝。它讓我感到沒有錯誤報告。

+0

您是否必須對cygwin執行此操作?我期望的Windows版本的工作。 – simonzack

+0

Windows cmd中的相同錯誤: Microsoft Windows [Version 6.3.9600] (c)2013 Microsoft Corporation。版權所有。 C:\ Users \ BTO-user> python3.2m Python 3.2.5(默認,2014年7月28日,01:44:48) cygwin上的[GCC 4.8.3] 鍵入「help」,「copyright」 ,「學分」或「許可證」以獲取更多信息。 >>>從PyQt5.QtWidgets導入的QApplication C:\用戶\ BTO用戶> (我不知道如何複製粘貼此好聽) –

+0

我的意思是窗戶蟒蛇,'python3.2m'是cygwin的蟒蛇。還是你必須使用cygwin python? – simonzack

回答

0

@simonzack的建議導致瞭解決方案。我在cygwin環境中運行了命令,但在正常的Windows環境中運行後,它給出了更多描述性(或多或少)的錯誤。

[關於DLL加載失敗,錯誤爲:

  • 一定要採取最後可能的版本http://sourceforge.net/projects/pyqt/files/PyQt5/
  • 添加到environmentvariable:指定的模塊找不到由動作的組合解決路徑python的Windows版本的PyQt5安裝的存儲庫和窗口中的Qt5安裝的存儲庫