python3.X 使用pip 离线安装whl包

0. 绪论

断网的环境下配置python开发环境非常讨厌,本文旨在优雅暴力的解决这一问题。

生产环境 :
windows 7 windows10
python 3.5.2
pip 1.5.2

友情提示:出现问题时候,看日志是王道!计算机不会犯错!

机器上python2,3混用的问题,参考:
http://blog.csdn.net/wangyaninglm/article/details/53312606
第二小节:不同版本python混用(官方用法)其实主要就是前面加上py -3(或)2

Windows离线断网环境下安装Python包,配置环境,准备用来生成word模版,需要用到一些win32com的python库,但是又没有网还想用pip方式傻瓜安装,怎么办呢,百度google探索了半天。姑且记录一下
linux下此方法应该同样可行。

当然还有暴力的方法是,pip show 包名,然后python的版本一样的话直接copy目录(红线部分),import应该也是好使的。下面以numpy包为例。

python3.X 使用pip 离线安装whl包


1.安装过程

1.下载最新pip,更新pip版本

新建packages文件夹放在目录中:c:\python35\packages

py -3 –m pip install --upgrade pip

2.在可以联网的开发机器上安装好需要的包
例如:

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

3.打包已安装的包

在c:\python35目录下新建packages文件夹用来存储下载下来的所需安装包。
在 c:\python35\Scripts下启动cmd窗口。

pip list #查看安装的包
pip freeze >requirements.txt
py -3 –m pip install --download c:\python35\packages -r requirements.txt

上述命令需要在一个联网机器上运行,不然会报错,不联网的机器似乎没法打包已经安装好的whl包,如果有方法求高手告知,报错如下(白色字体是联网后运行正常的):
python3.X 使用pip 离线安装whl包

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目录下。

py -3 –m pip install --no-index --find-index=c:\python35\packages -r requirements.txt

上述命令中的–find-index 这个命令在python27中似乎是对的,python35中需要换成–find-links

python3.X 使用pip 离线安装whl包

正确的命令:

py -3 -m pip install --no-index --find-links=c:\python35\packages -r requirements.txt

3.原理

python3.X 使用pip 离线安装whl包

这种whl包下载好后,放在上述位置,再修改下面文件
python3.X 使用pip 离线安装whl包

添加一行:

包名=版本号

来一个命令就行了!装过的pip就不装了,没装的pip会自动安装

py -3 -m pip install –no-index –find-links=c:\python35\packages -r requirements.txt

python3.X 使用pip 离线安装whl包

参考

https://segmentfault.com/a/1190000006027207

pip常用命令:
http://me.iblogc.com/2015/01/01/pip%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4/

pip documentation:
https://pip.pypa.io/en/latest/

上一篇:VC之CString,wchar_t,int,string,char*之间的转换


下一篇:计算机专业毕业生,求职升学,英语自我介绍