最新Anaconda搭配PyQt5+Eric6開發

寫在最前面

     最近因項目需要,領導讓我寫一個客戶端界面。從來沒寫過客戶端的我真是犯難了,調研了一些資料推薦用QT實現,可是用c++寫QT成本太高了,決定使用pyqt。

     王碩的《PyQt5快速開發與實戰》推薦使用Eric6進行PyQt5界面開發。我辛辛苦苦了兩天才把環境搭建好之後,發現Eric6真是難用,本文勸退各位最好不要用Eric6開發,安裝就是一個大麻煩。我目前使用Anaconda+PyQt5+Pycharm進行pyqt開發,anaconda方柏霓管理各種包,pycharm方便管理python項目。這裏把我安裝pyqt5和eric6的遇到的坑記錄下來,方便那些遇到跟我一樣的問題的人有一個參考。

 

安裝準備

1. 安裝Anaconda,網址是:https://www.anaconda.com/distribution/#download-section。網上使用Anaconda安裝PyQt5時,python版本比較老,基本上是3.5之前的。我的版本是3.7.3,目前最新的了。

2. 安裝pyqt5。實際上,anaconda3已經自帶pyqt5了,本不要在重新安裝了。但我當時不知道,安裝完之後才發現pyqt5已經自帶了。

安裝完anaconda之後,打開anaconda prompt,使用pip安裝pyqt5。

3. 使用pip安裝pyqt5-tools。實際上,安裝pyqt5-tools就是安裝qtdesigner,pyqt5不自動安裝qtdesigner,需要我們自己額外安裝。

4. 用pip命令安裝QScintill。

前4步都很簡單,一般不會出什麼問題。如果安裝失敗,比如出現什麼Timeout錯誤,說明你的網絡不行,多試幾次,或者換一個鏡像源,比如豆瓣的。

5. 從https://sourceforge.net/projects/eric-ide/files/eric6/stable/下載最新的Eric6。話說Eric6還真是難找啊,網上搜索Eric6關鍵詞都找不到的。最新的Eric6已經不提供漢化包了,希望大家要能夠適應。下載完之後隨便解壓到哪個文件加下,比如我的:

雙擊install.py安裝即可。這裏我碰到的問題很多,總是提示找不到PyQt5模塊,如下圖:

回車安裝pyqt5的時候又提示我可以找到PyQt5模塊,但調用的時候就調不到,然後退出。

可是我明明已經安裝了,pip怎麼會找不到呢。原來是我的的電腦之前裝VS2019的時候我選擇了安裝python,電腦裏除了有anaconda的python解釋器,vs2019附帶的python解釋器。如下圖。

之前使用pip安裝pyqt5的時候,都默認安裝在anaconda的Scripts目錄下,而我雙擊install.py的時候,實際上使用的是我原生的python解釋器打開的,所以找不到模塊。

打開install.py文件發現,裏面其實是調用pip命令安裝pyqt5的,如下圖所示:

這就明瞭了,實際上我雙擊install.py的時候是使用原生python解釋器進行安裝,所以搜索模塊路徑就是在原生的python路徑下,當然找不到pyqt5。使用anaconda prompt打開install.py文件進行安裝就可以了。

 

PS:其實這裏卡了我很久了,兩天都在解決這個問題,我在Eric6官網上查看別人遇到的問題,很巧合,也有人跟我遇到同樣的問題,如下圖所示:

官網給出的解釋是確保你安裝PyQt5的解釋器與你打開install.py的解釋器是同一個解釋器,這讓我恍然大悟,使用原生的python自帶的pip工具查看PyQt5包:pip show PyQt5根本找不到,而使用anaconda帶的pip工具就可以找到PyQt5。

 

 

原因明白之後,使用anaconda prompt調用install.py文件之後,發現又出現了新的問題,提示我QtWebEngineWidgets安裝失敗,如下圖所示:

我又打開install.py文件定位到這一行查看到底是什麼原因,結果如下圖所示:

註釋說的很明白了,PyQt5.12版本之後QtWebEngine被獨立成一個單獨的輪子,也即是我要單獨安裝QtWebEngine。好吧,再次pip install PyQtWebEngine。由於我已經安裝過了,所以寫這篇博文在此安裝提示我已經存在這個模塊了。

最後,再次運行install.py文件,終於一切都準備就緒了。這裏要說明一下,我安裝的時候使用了--user命令,是因爲我電腦總是提示我:xxx寫入被拒絕的錯誤,如果你的也有這個錯誤,可以試試使用--user命令。

6. 安裝完之後,在anaconda的安裝目錄\Lib\site-packages有一個eric6文件夾,桌面出現eric6的蛇頭快捷方式,如圖所示:

 

噁心的來了:雙擊桌面蛇頭快捷方式居然沒反應,查看屬性原來這個蛇頭居然是鏈接到xxx.bat,實際上真正的eric是eric6文件夾裏的eric6.pyw文件,打開這個文件纔是打開eric6軟件。另外,eric6居然還給我捆綁了一個瀏覽器eric6 Broswer,真是6啊。

 

 

最後,eric的配置這裏就不寫了,太多了,我也是小白,沒用過幾次這個軟件。這裏只是記錄一下我安裝eric6的過程中遇到的問題,以及是如何一步步解決的,希望能給後來人一個參考。

 

實際上,自從我裝了Eric6之後,我就沒用過幾次開發,最後我使用的是anaconda+PyQt5+Pycharm的模式,因爲Eric6其實真的不好用。

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章