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

yipeiwu_com6年前Python基础

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设置代理,也是不起作用的。


相关文章

解决Python3 被PHP程序调用执行返回乱码的问题

因为有一部分程序是 Python 写的,所以需要 PHP 调用 Python 程序返回数据,使用 exec 返回的是乱码 $data = "Geek程序员" $get = exec(...

在cmd中运行.py文件: python的操作步骤

1 打开cmd, 不改变运行的目录: 输入python 空格  调试好的python文件路径 或者python 空格  将python文件拖入cmd中 2 打开cmd...

numpy按列连接两个维数不同的数组方式

合并两个维数不同的ndarray 假设我们有一个3×2 numpy数组: x = array(([[1,2], [3, 4], [5,6]])) 现在需要把它与一个一维数组:...

Python中的枚举类型示例介绍

起步 Python 的原生类型中并不包含枚举类型。为了提供更好的解决方案,Python 通过 PEP 435 在 3.4 版本中添加了 enum 标准库。 枚举类型可以看作是一种标签或...

python+pyqt5实现图片批量缩放工具

python+pyqt5实现图片批量缩放工具

批量修改图片大小好像用PS也可以,不过我不会,程序猿就用程序来解决。 这段时间学了下Python,很强大,之前一些不知道怎么处理的东西在Python里面都能找到解决方法。 工具界面如下...