天天看點

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

斷網的環境下配置python開發環境非常讨厭,本文旨在優雅暴力的解決這一問題。

生産環境 : windows 7 windows10 python 3.5.2 pip 1.5.2

友情提示:出現問題時候,看日志是王道!計算機不會犯錯!

機器上python2,3混用的問題,參考:

<a href="http://blog.csdn.net/wangyaninglm/article/details/53312606">http://blog.csdn.net/wangyaninglm/article/details/53312606</a>

第二小節:不同版本python混用(官方用法)其實主要就是前面加上py -3(或)2

Windows離線斷網環境下安裝Python包,配置環境,準備用來生成word模版,需要用到一些win32com的python庫,但是又沒有網還想用pip方式傻瓜安裝,怎麼辦呢,百度google探索了半天。姑且記錄一下

linux下此方法應該同樣可行。

當然還有暴力的方法是,pip show 包名,然後python的版本一樣的話直接copy目錄(紅線部分),import應該也是好使的。下面以numpy包為例。

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

1.下載下傳最新pip,更新pip版本

建立packages檔案夾放在目錄中:c:\python35\packages

2.在可以聯網的開發機器上安裝好需要的包

例如:

py -3 –m pip install numpy py -3 –m pip install pandas

3.打包已安裝的包

在c:\python35目錄下建立packages檔案夾用來存儲下載下傳下來的所需安裝包。

在 c:\python35\Scripts下啟動cmd視窗。

上述指令需要在一個聯網機器上運作,不然會報錯,不聯網的機器似乎沒法打包已經安裝好的whl包,如果有方法求高手告知,報錯如下(白色字型是聯網後運作正常的):

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

requirements.txt是這個樣子:大概記載了每個包的版本号

cycler==0.10.0 jieba==0.38 matplotlib==1.5.3 nltk==3.2.1 numpy==1.11.2 pyparsing==2.1.10 python-dateutil==2.6.0 pytz==2016.10 scikit-learn==0.18.1 six==1.10.0

4.離線情況安裝其他機器打包好的包whl

将packages檔案夾和requirement.txt拷貝至離線機器上目錄下,

packages檔案夾放在c:\Python35下,requirement.txt放在c:\Python35\Scripts下。

requirements.txt檔案放在pip.exe目錄下。

上述指令中的–find-index 這個指令在python27中似乎是對的,python35中需要換成–find-links

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

正确的指令:

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

這種whl包下載下傳好後,放在上述位置,再修改下面檔案

python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

添加一行:

包名=版本号

來一個指令就行了!裝過的pip就不裝了,沒裝的pip會自動安裝

py -3 -m pip install –no-index –find-links=c:\python35\packages -r requirements.txt
python3.X 使用pip 離線安裝whl包0. 緒論1.安裝過程3.原理參考

<a href="https://segmentfault.com/a/1190000006027207" target="_blank">https://segmentfault.com/a/1190000006027207</a>

pip常用指令:

<a href="http://me.iblogc.com/2015/01/01/pip%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/" target="_blank">http://me.iblogc.com/2015/01/01/pip%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/</a>

pip documentation:

<a href="https://pip.pypa.io/en/latest/" target="_blank">https://pip.pypa.io/en/latest/</a>