当前位置: 首页 > news >正文

pip设置国内源:阿里云、腾讯云、清华大学源

更换Python的pip源(尤其是默认源访问速度较慢时)是一个常见需求,可以显著提升安装Python包的速度。以下是如何为pip设置国内源的步骤,以阿里云、腾讯云、清华大学源为例:

1. 备份原有源配置(可选但推荐)

在进行任何更改之前,备份现有的pip配置文件是一个好习惯。这样,如果遇到问题,你可以轻松恢复到初始状态。

 

Bash

1mkdir ~/.pip_backup
2cp ~/.pip/pip.conf ~/.pip_backup/  # Linux/macOS
3copy %USERPROFILE%\pip\pip.ini %USERPROFILE%\pip_backup\pip.ini  # Windows

如果上述命令提示找不到文件或目录,不用担心,这可能意味着你还没有创建过自定义的pip配置文件,直接进行下一步即可。

2. 设置新的源

阿里云源
 

Bash

1echo "[global]" > ~/.pip/pip.conf  # Linux/macOS
2echo "index-url = https://mirrors.aliyun.com/pypi/simple/" >> ~/.pip/pip.conf
3echo "[install]" >> ~/.pip/pip.conf
4echo "trusted-host=mirrors.aliyun.com" >> ~/.pip/pip.conf

对于Windows用户,编辑 %USERPROFILE%\pip\pip.ini 文件(如果不存在则创建),并添加相似内容:

 
1[global]
2index-url = https://mirrors.aliyun.com/pypi/simple/
3[install]
4trusted-host=mirrors.aliyun.com
腾讯云源
 

Bash

1echo "[global]" > ~/.pip/pip.conf
2echo "index-url = https://mirrors.tencent.com/pypi/simple/" >> ~/.pip/pip.conf
3echo "[install]" >> ~/.pip/pip.conf
4echo "trusted-host=mirrors.tencent.com" >> ~/.pip/pip.conf

或在Windows中编辑 %USERPROFILE%\pip\pip.ini

 
1[global]
2index-url = https://mirrors.tencent.com/pypi/simple/
3[install]
4trusted-host=mirrors.tencent.com
清华大学源
 

Bash

1echo "[global]" > ~/.pip/pip.conf
2echo "index-url = https://pypi.tuna.tsinghua.edu.cn/simple/" >> ~/.pip/pip.conf
3echo "[install]" >> ~/.pip/pip.conf
4echo "trusted-host=pypi.tuna.tsinghua.edu.cn" >> ~/.pip/pip.conf

Windows用户编辑 %USERPROFILE%\pip\pip.ini

 
1[global]
2index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
3[install]
4trusted-host=pypi.tuna.tsinghua.edu.cn

3. 测试配置

完成以上步骤后,你可以通过尝试安装一个包来验证新的源是否生效:

 

Bash

1pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy  # 使用清华源安装numpy作为示例

或者,如果你已经设置了全局源,可以直接运行:

 

Bash

1pip install numpy

如果安装过程比以往更快,说明源设置成功。

注意事项

  • 确保使用的是最新的pip版本,可以通过运行 pip install --upgrade pip 来更新。
  • 源地址可能会有变动,请定期检查源的官方公告或文档以获取最新信息。
  • 如果你在使用虚拟环境,可能需要在该虚拟环境内设置pip源。

除了上述基本的换源方法外,还有一些额外的信息和技巧可以帮助你更好地管理和利用pip源:

4. 临时使用特定源

有时候你可能只想临时使用某个源安装一个包,而不是修改全局配置。这时可以在安装命令中直接指定源:

 

Bash

1pip install --index-url=https://pypi.tuna.tsinghua.edu.cn/simple numpy

这样,仅这次安装会使用清华源,不会影响其他安装的源设置。

5. 配置多个源

虽然通常我们只设置一个主源,但pip实际上支持在配置文件中设置多个索引URL。这在你需要从不同源获取不同包时可能有用。不过,这种方式比较高级且不常用,因为大多数情况下单个镜像就已经包含了所有必要的包。

6. 使用国内DevOps平台的源

除了阿里云、腾讯云、清华大学等源,一些国内的DevOps平台如码云Gitee也提供了PyPI镜像服务。你可以根据自己的网络状况选择最适合的源。

7. 管理依赖

当你从项目要求文件(如requirements.txt)安装依赖时,也可以通过在命令行中指定源来确保这些依赖从特定源安装:

 

Bash

1pip install --index-url=https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

8. pip配置文件的路径

  • 在Linux和macOS上,默认的pip配置文件路径是 ~/.pip/pip.conf
  • 在Windows上,默认路径通常是 %HOME%\pip\pip.ini 或 %APPDATA%\pip\pip.ini(取决于你的系统配置)。

9. 使用环境变量

对于更灵活的控制或在不修改配置文件的情况下设置源,可以使用环境变量。例如,在命令行中设置:

 

Bash

1export PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/

然后运行pip安装命令。这适用于当前终端会话。对于永久设置或跨会话使用,考虑将此命令添加到你的shell配置文件中(如 .bashrc, .zshrc 等)。

10. 安全考量

虽然使用镜像源可以提高下载速度,但也请确保使用的源是可信的,避免潜在的安全风险。官方推荐或广泛使用的镜像源通常较为可靠。

相关文章:

  • leetcode144. 二叉树的前序遍历
  • python学习笔记-10
  • 新版本vue-cli打包之后没有css文件
  • 数据分析:解锁业务洞察与决策优化的关键
  • android之WindowManager悬浮框
  • C#面:C# 类的执行顺序?
  • [pmayavi][python]mayavi所有whl文件下载地址汇总
  • “探索未来之音:AI音乐创作的前沿技术与应用“
  • 安卓逆向案例——XX电影网
  • Ilya出走记:SSI的超级安全革命
  • Python面试宝典:Python中与常用的机器学习库相关的面试笔试题(1000加面试笔试题助你轻松捕获大厂Offer)
  • 设置Docker容器开机自启
  • 硬件开发笔记(二十一):外部搜索不到的元器件封装可尝试使用AD21软件的“ManufacturerPart Search”功能
  • 动态规划:Leetcode 739. 每日温度
  • 【gdb 如何生成并查看core dump】
  • SegmentFault for Android 3.0 发布
  • ComponentOne 2017 V2版本正式发布
  • Consul Config 使用Git做版本控制的实现
  • IP路由与转发
  • Java到底能干嘛?
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • js算法-归并排序(merge_sort)
  • mysql 数据库四种事务隔离级别
  • PAT A1120
  • scrapy学习之路4(itemloder的使用)
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 复习Javascript专题(四):js中的深浅拷贝
  • 构建二叉树进行数值数组的去重及优化
  • 算法-图和图算法
  • 小程序button引导用户授权
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • ​马来语翻译中文去哪比较好?
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • #pragma once与条件编译
  • (11)MSP430F5529 定时器B
  • (2015)JS ES6 必知的十个 特性
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (Java企业 / 公司项目)点赞业务系统设计-批量查询点赞状态(二)
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (笔试题)分解质因式
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (二)学习JVM —— 垃圾回收机制
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (四)stm32之通信协议
  • (四)图像的%2线性拉伸
  • (一)80c52学习之旅-起始篇
  • (转)平衡树
  • ***详解账号泄露:全球约1亿用户已泄露
  • ... 是什么 ?... 有什么用处?
  • .NET C# 使用 iText 生成PDF
  • .Net OpenCVSharp生成灰度图和二值图
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验