如何在requirements.txt或自动生效位置固定PyPi下载镜像?
如何在requirements.txt或自动配置中固定PyPI镜像
方法1:在requirements.txt中直接指定镜像
如果希望通过requirements.txt统一镜像源,可在文件开头添加镜像参数,后续包会自动使用该源:
# 全局指定清华镜像源 --index-url https://pypi.tuna.tsinghua.edu.cn/simple requests==2.31.0 numpy==1.26.0
若仅需为特定包指定镜像,可在包名后追加参数:
requests==2.31.0 --index-url https://pypi.tuna.tsinghua.edu.cn/simple numpy==1.26.0
注意:全局镜像参数必须放在所有包声明的最前面才能生效。
方法2:项目级pip配置文件(自动读取)
创建项目专属的pip配置文件,确保所有拉取项目的机器自动使用指定镜像:
- Linux/macOS:在项目根目录创建
pip.conf - Windows:在项目根目录创建
pip.ini
配置文件内容如下:
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
将该文件加入项目版本控制(如Git),其他机器克隆项目后,pip会优先读取此项目级配置,覆盖全局设置。
pip配置优先级:项目目录配置 > 用户目录配置 > 系统级配置,这种方式能最大程度保证团队环境一致。
方法3:在项目构建文件中指定(适用于开发包)
如果是自己开发的Python包,可在pyproject.toml中配置镜像:
[tool.pip] index-url = "https://pypi.tuna.tsinghua.edu.cn/simple"
或者在setup.py中添加依赖源:
from setuptools import setup setup( name="your-package", ..., dependency_links=[ "https://pypi.tuna.tsinghua.edu.cn/simple/requests/" ] )
这种方式更适合包分发场景,日常项目用前两种方法更直接。
注意事项
- 若部分小众包在国内镜像未同步,可添加官方源作为补充:
--index-url https://pypi.tuna.tsinghua.edu.cn/simple --extra-index-url https://pypi.org/simple - 避免混用多个镜像源,防止依赖解析冲突,尽量保持主镜像统一。
内容的提问来源于stack exchange,提问作者innisfree
相关产品推荐
相关产品推荐

