修改pip源到国内的镜像源

时间:2023-03-08 22:22:04
修改pip源到国内的镜像源

国内网络原因,经常无法访问一些技术网站,pypi.python.org就是其中一个。
所以,使用pip给Python安装软件时,经常出现错误。
like this:

File "/usr/lib/python2.6/site-packages/pip/_vendor/requests/packages/urllib3/response.py", line 267, in read
raise ReadTimeoutError(self._pool, None, 'Read timed out.')
ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out.

修改pip连接的软件库可以解决这个问题。
http://pypi.douban.com是豆瓣维护一个镜像源,软件更新速度以及源的响应速度都OK。
so,我们可以将pip源指导这里来安装Python软件。

临时使用

pip install pythonModuleName -i https://pypi.douban.com/simple

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

永久生效

修改配置文件
用户家目录下的.pip/
比如root用户:/root/.pip/pip.conf。

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

在pip.conf中,添加以上内容,就修改了默认的软件源。以后pip命令会直接从制定的软件源安装软件。

All Steps:

[root@thatsit ~]# pwd
/root
[root@thatsit ~]#
[root@thatsit ~]# mkdir .pip
[root@thatsit ~]# vim /root/.pip/pip.conf
[root@thatsit ~]#
[root@thatsit ~]# cat !$
cat /root/.pip/pip.conf
[global]
index-url = https://pypi.douban.com/simple
[root@thatsit ~]#  

问题

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

参考链接:

http://blog.xiayf.cn/2013/11/01/change-pypi-mirror/