需求
最近系统重装了,需要安装 python,于是顺便安装个最新版本试试。另外,由于需要 sphinx-doc 来编制一些公用文件,因此需要安装 sphinx。
计算机无法连接互联网,真的很不方便!安装 sphinx 过程,大小坑不断,跌跌撞撞地总算安装成功,于是记录如下。
安装 python 3.6
从 www.activestate.com 下载 activepython3.6。
安装好 activepython3.6 之后,还需要安装 vc_redist.x64 ,以便提供 vc++2015 的动态库,否则 python.exe 无法运行
安装 sphinx
前往 https://pypi.python.org/pypi/Sphinx 下载 sphinx-*.whl ,然后执行
python -m pip install sphinx*.whl
会提示需要 jinja2 模块。于是 前往 https://pypi.python.org/pypi/Jinja2 下载 jinja2*.whl
再次运行 pip install sphinx*.whl
,又出现提示需要 snowballstemmer 模块。这到底需要多少模块呀?于是,打开 sphnix-*.whl 文件看看。
将文件 whl 后缀改成 zip ,然后试着解压,果然解压成功,从中找到一个 METADATA 文件,将其打开,看到一堆的 requirements 提示。难道要我一个个地从 pypi.python.org 去手动下载么,也太多了呀,这可怎么办?
搜索之,得到一个用 pip 离线安装 whl 的方法,载录如下:
- 在可上网电脑上安装所需要的包
pip install sphinx
- 新建目录,存放安装包
mkdir c:\python36\packages
- 进入该目录
cd c:\python36\packages
- 建立待下载清单
pip freeze >requirements.txt
(当然,在正式下载前,你完全可以随意编辑这个下载清单) - 下载哟
pip install --download . -r requirements.txt
- 将 packages 整个儿拷贝回离线电脑的 c:\python36 目录
- 进入该目录,执行
python -m pip install --no-index --find-links=. -r requirements.txt
总结
- 普通安装的 win7 x64 系统,需要安装一个 vc++ 支持库,以便支持 python3.6
- 离线安装 python 模块,方法如下:
- 在外网计算机安装模块 (
pip install foobar
) - 在外网计算机生成下载清单(
pip freeze >requirements.txt
) - 在外网计算机下载模块(
pip install --download c:\somewhere -r requirements.txt
) - 将东西拷贝回离线计算机,安装之(
python -m pip install --no-index --find-links=c:\somewhere -r requirements.txt
)
- 在外网计算机安装模块 (
参考
- Visual C++ 2015 Redistributable Packages: https://www.microsoft.com/en-us/download/details.aspx?id=48145
- pip 离线安装各种包: http://blog.csdn.net/wangyaninglm/article/details/54177720