问题
近日想在云服务器上面跑一些脚本。在一切都在本地OK了之后,就打算在上面装环境。在 pip install xx 的时候开始出现了进度条,但是过了一段时间都没有好。然后突然报出了错误异常。大概就是超时错误什么的。
开始以为是 python 或者 pip 的版本问题,或者是服务器的环境问题。但是看了一下没什么特殊的。
然后直接 ping 了一下下载的地址,能访问到,但是平均时间都是几百毫秒。那么就是把 pip 的下载源修改成国内的即可。
解决
切换国内的源。
# 使用方法(临时指定源地址)
pip install pycrypto -i http://xxxx
# 阿里云
http://mirrors.aliyun.com/pypi/simple/
# 豆瓣(douban)
http://pypi.douban.com/simple/
# 清华大学
https://pypi.tuna.tsinghua.edu.cn/simple/
# 中国科学技术大学
http://pypi.mirrors.ustc.edu.cn/simple/
# 如果有报错说网站不可信任,根据提示加上 --trusted-host xxx 即可
pip install pycrypto -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com`
如果想配置成默认的源,方法如下。一般需要创建或修改配置文件(如果文件不存在就创建)
# linux的文件在~/.pip/pip.conf(windows在%HOMEPATH%\pip\pip.ini),
# 修改内容为:
[global]
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
然后,在 pip install 的时候就不需要手动指定源地址了。