最近在内网环境做开发,不能联网下载模块的痛苦难受至极,顺道整理一份自认为还完整的保姆级教程供大家参考。

测试环境:windows 10

python: python 3.8.10

一、离线安装pip

现象:本地cmd环境输入pip提示没有命令,可能会存在以下两种情况:

  1. 安装Python程序时没有安装pip
  2. 安装后没有配置环境变量,如何配置还请大家自行百度

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开头的目录