这几天搞Windows离线断网环境下安装Python包,配置环境,各种坑!做个记录,供以后查询吧。

# 生产环境 windows 7
# python 2.7.9
# pip 1.5.2

友情提示:当你遇到无法安装包的不明错误时,可以回头来考虑如下建议了:

想办法更新Python版本!!!
想办法更新Python版本!!!
想办法更新Python版本!!!

如果不能更新Python版,
想办法更新pip版本!!!
想办法更新pip版本!!!
想办法更新pip版本!!!

一、更新pip版本

1.下载最新pip

  • 新建packages文件夹放在目录中:d:python27packages。

  • Unofficial Windows Binaries for Python Extension Packages
    从该网站提供的编译好的包下载最新版本pip-8.1.2-py2.py3-none-any.whlwheel-0.29.0-py2.py3-none-any.whl,在packages文件夹中。

离线安装pip时,这两个包需要准备好。

2.安装下载好的pip

  • 进入python27目录(目录下有python.exe),也放在该目录。

  • 从pip文档下载get-pip.py

  • get-pip下载链接

  • cmd窗口执行

    python.exe get-pip.py --no-index --find-links=d:\\python27\\packages

PS:如果你可以联网,那么安装pip就方便多了,执行python get-pip.py

方案

1.在可以联网的开发机器上安装好需要的包

例如:

pip install numpy
pip install pandas

2.打包已安装的包

在D:python27目录下新建packages文件夹用来存储下载下来的所需安装包。

在 D:Python27Scripts下启动cmd窗口。

pip list #查看安装的包
pip freeze >requirements.txt
pip install --download d:\\python27\\packages -r requirements.txt

3.离线情况安装打包好的包

packages文件夹和requirement.txt拷贝至离线机器上目录下,packages文件夹放在D:Python27下,requirement.txt放在D:Python27Scripts下。

requirements.txt文件放在pip.exe目录下。

pip install --no-index --find-index=d:\\python27\\packages -r requirements.txt

补充

1.下载指定的包到指定文件夹

pip install --download d:\\python27\\packs pandas(-r requirements.txt)

2.安装指定的离线包

pip install --no-index --find-links=d:\\python27\\packs\\ pandas (-r requirements.txt)

3.原来一个pip命令还能玩出花儿来啊!参考文章中有好资源,希望不要错过!走一遍,留个印象,以后要用到就能想起来~

参考

  • How to pip install packages according to requirements.txt from a local directory?

  • Stackoverflow about Python

  • pip 離線安裝 Python 套件 – pip2pi

  • 推荐-离线包下载Unofficial Windows Binaries for Python Extension Packages

  • pip文档

  • python安装第三方的包

  • 叙事学派-如何制作一个 pip 离线安装环境

  • 推荐-怎么在windows下安装pip?

  • 推荐-pip常用命令