准备需要:a、待安装的机器;b、事先安装好pip的有网机器,win/linux不限,但要python大版本相同
1.离线安装pip、wheel
python2.7.9版本之前,是不自带pip的,需要手动安装,而在无网环境可以这样安装:
a、在有网机器上直接在浏览器输入https://bootstrap.pypa.io/get-pip.py下载,并放到无网机器上
b、修改get-pip.py文件,添加一条打印语句
sys.exit(pip._internal.main(args))
改为:
print(args)
sys.exit(pip._internal.main(args))
c、执行python get-pip.py将可以看到待安装的包,如:
['install', '--upgrade', '--force-reinstall', 'pip', 'wheel']
上面pip、wheel就是待安装的包。
d、在有网机器上执行如下命令,下载安装包:
pip download -d pip pip
pip download -d wheel wheel
e、将下载的文件上传到无网机器上,修改get-pip.py文件,将上传的文件加进去:
if implicit_pip:
args += ["pip"]
if implicit_setuptools:
args += ["setuptools"]
if implicit_wheel:
args += ["wheel"]
改为:
if implicit_pip:
args += ["./pip-19.2.2-py2.py3-none-any.whl"]
if implicit_setuptools:
args += ["setuptools"]
if implicit_wheel:
args += ["./wheel-0.33.6-py2.py3-none-any.whl"]
f、再次执行python get-pip.py即可。
2、离线安装外部依赖包
可选:制作requirement.txt
pip freeze > requirement.txt
无网安装外部依赖包办法:
例如:安装pytest包得时候会顺带安装pytest依赖包
离线下载安装包
下载单个离线包 - pip download -d your_offline_packages <package_name>
批量下载离线包 - pip download -d your_offline_packages -r requirements.txt
离线安装
安装单个离线包 - pip install --no-index --find-links=/your_offline_packages/ package_name
批量安装离线包 - pip install --no-index --find-links=/your_offline_packages/ -r requirements.txt