通过get-pip.py脚本手动安装Python pip

桃夭
桃夭
发布时间:2026-11-03 | 7人浏览过
原创

详细介绍如何通过官方提供的 get-pip.py 引导脚本手动安装 Python pip 包管理工具,涵盖环境检查、脚本下载、命令执行、关键参数及环境变量排查。

在精简版 Linux 镜像、纯净版容器系统或部分嵌入式环境中,Python 运行时往往默认未携带包管理工具 pip;此外,某些已有环境由于误删库文件或依赖损坏,可能导致 python -m pip 命令直接报错瘫痪。通过 PyPA 官方提供的独立引导脚本 get-pip.py 进行手动安装,是不依赖任何第三方包管理器或既有 pip 组件的最可靠解决方案。本文将按实际操作顺序,详细讲解从环境检查、官方脚本下载、参数调配安装到环境变量验证与排查的完整流程。

通过get-pip.py脚本手动安装Python pip
图 0:get-pip.py 引导安装全景与核心交付组件

一、准备工作与目标 Python 环境核对

执行 get-pip.py 的核心前提是系统中必须已经具备一个可正常运行的 Python 解释器。因为该脚本本身是由 Python 代码编写并执行的,它通过当前执行它的解释器来确定目标安装位置。

首先,在终端中检查目标 Python 解释器的具体命令和版本号:

# 检查 python3 解释器版本
python3 --version

# 查看该解释器的实际物理路径
which python3

示例输出:

Python 3.10.12
/usr/bin/python3
注意事项:多版本共存的系统(例如同时存在 Python 3.8 与 Python 3.11),请务必确认执行脚本时调用的 Python 命令正是你需要安装 pip 的那个解释器。后续的所有操作,必须保持解释器命令一致。

二、获取官方 get-pip.py 引导脚本

PyPA(Python Packaging Authority)官方为用户维护了专门用于引导安装的域名 bootstrap.pypa.io。该脚本内嵌了经过压缩的 pip 核心轮子包,用户只需单文件下载即可。

根据你的操作系统与终端工具,选择最适合的下载方式:

1. 使用 curl 或 wget 下载(Linux / macOS)

# 推荐使用 curl 下载并保存为本地文件 get-pip.py
curl -sSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py

# 或者使用 wget 下载
wget https://bootstrap.pypa.io/get-pip.py

2. 使用 PowerShell 下载(Windows)

Invoke-WebRequest -Uri https://bootstrap.pypa.io/get-pip.py -OutFile get-pip.py
版本限制提醒:主路径 bootstrap.pypa.io/get-pip.py 默认支持当前受官方支持的主流 Python 3 版本。如果目标环境是极老的归档系统(如已停更的 Python 2.7 或 Python 3.6),直接运行最新脚本可能会提示解释器版本不兼容。此时需下载对应版本归档目录下的专用脚本,例如 https://bootstrap.pypa.io/pip/2.7/get-pip.py。
通过get-pip.py脚本手动安装Python pip
图 1:通过 get-pip.py 手动安装的标准四步流水线

三、运行脚本安装 pip 与常用参数配置

下载完成后,直接使用目标解释器执行该脚本。根据你的权限和系统环境,可以选择不同参数执行:

1. 标准执行(具有系统管理员权限或在容器内)

如果当前处于 Docker 容器内部,或者你具有当前系统的 root / 管理员权限,可以直接执行全局安装:

# Linux / macOS
sudo python3 get-pip.py

# Windows (以管理员身份运行终端)
python get-pip.py

示例输出过程:

Collecting pip
  Downloading pip-24.0-py3-none-any.whl (1.8 MB)
Collecting setuptools
  Downloading setuptools-69.5.1-py3-none-any.whl (894 kB)
Collecting wheel
  Downloading wheel-0.43.0-py3-none-any.whl (65 kB)
Installing collected packages: wheel, setuptools, pip
Successfully installed pip-24.0 setuptools-69.5.1 wheel-0.43.0

2. 用户级安装(无 sudo 权限或避免修改系统公共目录)

在公用服务器或普通个人用户权限下,强烈推荐使用 --user 参数。该参数会将 pip 及后续安装的包放置在当前用户的主目录下(例如 Linux 下的 ~/.local/lib/python3.X/site-packages,Windows 下的 %APPDATA%\Python):

python3 get-pip.py --user

3. 国内网络加速镜像参数

在网络连接 PyPI 官方源较慢或经常超时时,可以通过 -i 或 --index-url 参数指定镜像加速源,确保附加依赖包能顺利下载:

python3 get-pip.py -i https://pypi.tuna.tsinghua.edu.cn/simple
通过get-pip.py脚本手动安装Python pip
图 2:get-pip.py 内部自解包与目标目录注入机制

四、不同场景下的参数选择矩阵

get-pip.py 脚本功能非常丰富,不仅可以安装 pip 本身,还能按需控制是否安装 setuptools 和 wheel,或者在完全隔离的离线局域网中工作。根据不同场景,可对照下表选取适宜的执行方案:

业务场景 推荐执行参数与命令 主要优势与特点
Docker 基础镜像 python3 get-pip.py --no-cache-dir 避免在镜像层中保留临时 wheel 缓存,减小最终生成的镜像体积。
普通服务器 / 无 root python3 get-pip.py --user 完全隔离在个人家目录,不会影响系统原有组件和其他用户的运行环境。
极简轻量环境 python3 get-pip.py --no-setuptools --no-wheel 仅安装核心 pip 工具,跳过辅助构建组件,节约磁盘空间。
完全离网/内网环境 python3 get-pip.py --no-index --find-links=/path/wheels 阻断任何外网请求,强制从本地已下载好的 wheel 目录中安装依赖。
通过get-pip.py脚本手动安装Python pip
图 3:四类常见部署场景与参数决策矩阵

五、安装后验证与环境变量(PATH)排查

安装完成后,并不代表终端能直接识别 pip 字符串。验证需要分为两步进行排查。

1. 验证 Python 模块级是否就位

优先运行模块直接调用命令,该命令不受终端可执行程序环境变量的影响:

python3 -m pip --version

示例正常输出:

pip 24.0 from /home/user/.local/lib/python3.10/site-packages/pip (python 3.10)

如果该命令能够输出 pip 版本和对应 site-packages 路径,说明核心文件已成功解包并装入 Python 库路径。

2. 验证命令行入口(CLI)

随后直接输入:

pip3 --version
# 或
pip --version
通过get-pip.py脚本手动安装Python pip
图 4:安装后状态验证与常见故障排查决策树

3. 常见问题排查与解决办法

问题一:python3 -m pip 正常,但提示 command not found: pip

原因分析:当使用 --user 参数或在非标准路径安装时,生成的 pip 可执行入口脚本存放在 ~/.local/bin(Linux)或 Python\Scripts(Windows)中,而该路径尚未加入系统环境变量 PATH。

解决方法(Linux / macOS):

# 临时生效
export PATH="$HOME/.local/bin:$PATH"

# 永久生效:将上述配置写入当前 Shell 配置文件
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
# 若使用的是 zsh,则写入 ~/.zshrc

解决方法(Windows):

在“系统属性” -> “环境变量”中,找到用户或系统变量 Path,添加 Python 安装目录下的 Scripts 文件夹路径(例如 C:\Users\用户名\AppData\Local\Programs\Python\Python310\Scripts),保存后重新打开 PowerShell 窗口。

问题二:遇到 error: externally-managed-environment 报错

原因分析:在 Debian 12、Ubuntu 23.04+ 及很多现代 Linux 发行版中,遵循了 PEP 668 规范。为了防止 pip 直接覆盖系统 apt 管理的基础 Python 模块,系统默认锁定了全局环境的包安装权限。

解决方法:

  • 推荐方案(推荐):优先使用 Python 自带的 venv 创建独立虚拟环境:
    python3 -m venv myenv
    source myenv/bin/activate
    # 在虚拟环境中 pip 会自动就位,无外部冲突
  • 直接运行(需自行承担系统环境受损风险):在运行 get-pip.py 时添加 --break-system-packages 参数强制写入:
    python3 get-pip.py --break-system-packages

六、脚本清理与后续升级维护

安装与验证完成之后,get-pip.py 的使命便已结束。它本质上只是一个安装引导工具,自身不占用持久后台服务。

  • 清理临时脚本:执行 rm get-pip.py(Windows 下执行 Remove-Item get-pip.py)即可安全删除本地文件。
  • 后续升级 pip:一旦 pip 已经正常工作,日后若需升级 pip,无需再次下载 get-pip.py,直接利用已装好的模块自更新即可:
    python3 -m pip install --upgrade pip

通过官方 get-pip.py 脚本手动安装 Python pip,不仅能有效解决没有预装包管理器或旧 pip 损坏无法修复的问题,而且能精准控制安装目录与镜像源,是每一位从事 Python 开发与运维人员值得熟练掌握的标准技能。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表