Python的包管理器pip更换软件源的方法详解


Posted in Python onJune 20, 2016

pip镜像源
在国内如果不使用 VPN 是没办法好好使用 pip 命令安装任何 Python 包的。所以另一个选择就是使用国内各大厂的开源镜像源。

目前国内靠谱的 pip 镜像源有:

  • 清华: https://pypi.tuna.tsinghua.edu.cn/simple
  • 豆瓣: http://pypi.douban.com/simple/
  • 阿里: http://mirrors.aliyun.com/pypi/simple/

在 pip 命令中使用镜像源很简单,在执行 install 命令时,使用 -i 参数加上源地址就可以了,例如:

pip install django -i http://pypi.douban.com/simple/

上面的命令就会使用豆瓣的源来安装 django。

如果经常要安装各类程序包,这样使用起来还是有点不方便的。把镜像地址放到 pip 的全局配置文件中也许是个不错的选择。编辑 ~/.pip/pip.conf 文件(如果不存在可以按路径新建),添加或修改以下配置:

临时使用

pip install pythonModuleName -i http://pypi.douban.com --trusted-host=pypi.douban.com

在命令行中添加以上参数,可以让pip从制定的镜像源安装软件。

配置

[global]
index-url = http://pypi.douban.com/simple/


上面的配置就是把豆瓣的源应用到全局环境。之后使用 pip 命令就不需要再指定镜像源参数。

在最新的 pip 版本(>=7)中,使用镜像源时,会提示源地址不受信任或不安全。所以需要在 pip 的配置文件指定一下镜像源是受信任的。配置示例如下:

[install]
trusted-host = http://pypi.douban.com/simple/

当然也可以不用添加,在每次执行 pip 命令时,附加上 --trusted-host 参数,后面再把镜像源地址加上就好。

问题

  • http://pypi.douban.com不提供HTTPS连接,关心安全问题的话,请三思后再决定是否使用。这个问题也导致在配置时,需要添加--trusted-host参数,假设软件源是安全的。
  • 虽然修改了软件源,但是pip search命令还是不能使用的,因为搜索软件使用的协议与安装软件不同。pip search基于xmlrpclib实现,pip install基于urllib2实现。同样地,对pip search设置代理,也是不起作用的。

Python 相关文章推荐
浅谈python正则的常用方法 覆盖范围70%以上
Mar 14 Python
基于Python中numpy数组的合并实例讲解
Apr 04 Python
TensorFlow损失函数专题详解
Apr 26 Python
对Python3中的print函数以及与python2的对比分析
May 02 Python
在CMD命令行中运行python脚本的方法
May 12 Python
numpy.linspace 生成等差数组的方法
Jul 02 Python
python使用thrift教程的方法示例
Mar 21 Python
深入了解Django View(视图系统)
Jul 23 Python
python中wx模块的具体使用方法
May 15 Python
Python使用windows设置定时执行脚本
Nov 12 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
Dec 07 Python
Python绘制K线图之可视化神器pyecharts的使用
Mar 02 Python
python3.5使用tkinter制作记事本
Jun 20 #Python
浅谈python抛出异常、自定义异常, 传递异常
Jun 20 #Python
python3 与python2 异常处理的区别与联系
Jun 19 #Python
浅谈Python的异常处理
Jun 19 #Python
qpython3 读取安卓lastpass Cookies
Jun 19 #Python
python3实现读取chrome浏览器cookie
Jun 19 #Python
python3 实现的人人影视网站自动签到
Jun 19 #Python
You might like
咖啡与牛奶
2021/03/03 冲泡冲煮
php中XMLHttpRequest(Ajax)不能设置自定义的Referer的解决方法
2011/11/26 PHP
深入php-fpm的两种进程管理模式详解
2013/06/03 PHP
php实现文件下载功能的几个代码分享
2014/05/10 PHP
php实现简单爬虫的开发
2016/03/28 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
记录几个javascript有关的小细节
2007/04/02 Javascript
JS:window.onload的使用介绍
2013/11/13 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
JavaScript通过HTML的class来获取HTML元素的方法总结
2016/05/24 Javascript
JavaScript实战之菜单特效
2016/08/16 Javascript
利用AngularJs实现京东首页轮播图效果
2016/09/08 Javascript
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
2017/04/14 jQuery
js评分组件使用详解
2017/06/06 Javascript
vue-router相关基础知识及工作原理
2018/03/16 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
2018/05/04 Javascript
小程序实现列表多个批量倒计时
2021/01/29 Javascript
详解在Python程序中自定义异常的方法
2015/10/16 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
Python3使用pandas模块读写excel操作示例
2018/07/03 Python
浅谈python下tiff图像的读取和保存方法
2018/12/04 Python
CSS3使用多列制作瀑布流
2016/05/10 HTML / CSS
你正在寻找的CSS3 动画技术
2011/07/27 HTML / CSS
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
戴尔荷兰官方网站:Dell荷兰
2020/10/04 全球购物
Ado与Ado.net的相同与不同
2014/12/08 面试题
说一下Linux下有关用户和组管理的命令
2014/08/18 面试题
小区门卫工作职责
2013/12/14 职场文书
网络优化专员求职信
2014/05/04 职场文书
离婚协议书范文
2015/01/26 职场文书
2015年青年志愿者协会工作总结
2015/04/27 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
在Python中如何使用yield
2021/06/07 Python
图神经网络GNN算法
2022/05/11 Python