python 在内网windows环境下pip三方包
我没用过Linux环境。
一般情况下,内网安装三方包,只需要在pypi找到对应python版本(2.7,3.6,。。。),系统位数(32位,64位)的whl包,cmd命令行cd进入相关目录,pip install whl名字.whl,安装就能成功。注意whl文件不能改名字。
但是,内网环境的python版本、系统位数和外网不一样,有时候三方包能够pip安装,但是找不到对应的whl包,那怎么办?
我外网环境是3.7 win10 64位,内网 3.6 win7 32位。anaconda在内网安装失败,只能直接安装python3.6 32位。
首先,我在外网电脑上安装python3.6 32位,因为64位可以兼容32位。安装目录d:\python32。重命名该目录下python.exe和scrpts目录下pip.exe为python32.exe\pip32.exe等。为什么这样做呢?我们在cmd命令行里输入pip 》》》》》等命令时,系统会自动在环境变量下的目录里寻找同名的exe文件执行命令。显然,当安装多个版本的python时,环境变量就会有多个pip.exe,会混淆导致错误。
pip32 install pip2pi。安装pip2pi包。 如果安装失败,使用命令 python32 -m pip install pip2pi
pip32 install freeze。安装pip2pi包。 如果安装失败,使用命令 python32 -m pip install freeze
python32 -m pip freeze >rr.txt 将安装包和版本输入到rr.txt中,打开保留pandas==0.23.0
建立一个pp文件夹,作为存放本地源的路径
pip2pi32 pp --no-binary :all: -r r.txt
pip2tgz32 pp -r r.txt 取得相关安装包
将pp文件夹、r.txt复制到内网环境中
pip install --no-index --find-links=pp -r r.txt 等待安装完成。python2命令会有所出入
pip2pi pip2tgz 在Scripts目录下,自行改名。