最近在内网环境做开发,不能联网下载模块的痛苦难受至极,顺道整理一份自认为还完整的保姆级教程供大家参考。
测试环境:windows 10
python: python 3.8.10
一、离线安装pip
现象:本地cmd环境输入pip提示没有命令,可能会存在以下两种情况:
- 安装Python程序时没有安装pip
- 安装后没有配置环境变量,如何配置还请大家自行百度
1.1 通过程序修复pip
最简单的办法运行Python安装程序,选择Modify选项重新修复环境,方法如下:
如此简单的方法显然不符合我对自己的定位,介绍如何通过源码安装。
1.2 源码安装pip
写文章之前必须得先啰嗦点内容,文件在哪儿下载,链接在此–>PyPI进网站后直接搜pip即可出现结果
1.2.1 解压安装
注意:tar.gz结尾的文件,在windows上可以使用解压软件直接解压
J:\python3810>cd pip-21.3.1J:\python3810\pip-21.3.1>python setup.py installrunning installrunning bdist_eggrunning egg_infowriting src\pip.egg-info\PKG-INFO ... 中间过程省略 ...Installed f:\sf_install\python38\lib\site-packages\pip-21.3.1-py3.8.eggProcessing dependencies for pip==21.3.1Finished processing dependencies for pip==21.3.1
二、离线安装模块
2.1 pip download下载(推荐)
推荐使用本方法,在有互联网的环境下载相关模块,下载文件的格式为xx.whl文件,使用pip download会默认下载与其关联的其他依赖包,以pandas模块为例
2.1.1 下载模块
J:\python3810\pandas>pip download pandas# 如果下载速度慢,可以加-i参数,临时使用国内源pip download -ihttps://pypi.tuna.tsinghua.edu.cn/simple pandasJ:\python3810\pandas>dir2018/06/15 15:04 .2018/06/15 15:04 ..2018/06/15 15:04 14,748,119 numpy-1.22.3-cp38-cp38-win_amd64.whl2018/06/15 15:05 10,565,777 pandas-1.4.2-cp38-cp38-win_amd64.whl2018/06/15 15:05 247,702 python_dateutil-2.8.2-py2.py3-none-any.whl2018/06/15 15:05 503,520 pytz-2022.1-py2.py3-none-any.whl2018/06/15 15:05 11,053 six-1.16.0-py2.py3-none-any.whl 5 个文件 26,076,171 字节 2 个目录 28,147,892,224 可用字节
2.1.2安装模块
将离线包拷贝到内网环境中执行以下命令安装即可
# 模块没有依赖的情况直接使用install安装即可pipinstallxxx.whl# 模块有依赖包的把所有包放在一个文件夹下,执行以下命令安装pip install --no-index --find-link=pandas pandas
- –no-index 不检查包索引中可用信息
- –find-links从指定的目录下找离线包
2.2 手动下载模块安装包(不推荐)
登录PyPI网站搜索pandas
重要:当手动下载模块时,一定要注意看当前模块是否存在依赖关系,如存在,需要把相应的依赖包下载到本地,或者安装时会报缺少依赖包无法安装。
三、离线升级pip
升级pip方法如下:
1. pip · PyPIPyPi官网下载最新版本的pip-xx.whl文件,或者pip download也可以。
J:\python3810\pandas>pip -Vpip 21.3.1 from f:\sf_install\python38\lib\site-packages\pip (python 3.8)J:\python3810\pandas>pip download -ihttps://pypi.tuna.tsinghua.edu.cn/simple pipLooking in indexes: https://pypi.tuna.tsinghua.edu.cn/simpleCollecting pip Downloading https://pypi.tuna.tsinghua.edu.cn/packages/96/2f/caec18213f6a67852f6997fb0673ae08d2e93d1b81573edb93ba4ef06970/pip-22.1.2-py3-none-any.whl (2.1 MB) ---------------------------------------- 2.1/2.1 MB 476.7 kB/s eta 0:00:00Saved j:\python3810\pandas\pip-22.1.2-py3-none-any.whlSuccessfully downloaded pip
2. 将whl文件放到python安装目录,和python.exe目录同一层,不知道安装目录的,输入pip -V可以看到安装目录
3. 管理员运行cmd,记住切换到安装目录
f:\sf_install\python38>python-mpipinstall--upgradepip-22.1.2-py3-none-any.whl
黄色提示部分可以忽略
常见报错
WARNING:Ignoringinvaliddistribution-ip(xx\lib\site-packages)进入python安装路径D:\python38\lib\site-packages,删除~ip开头的目录