6.python设置代理和添加镜像源介绍
为什么要修改镜像源?
一般使用python安装库,会用到pip install xxx 指令或者conda install xxx指令,因为pip和conda默认国外镜像源,这时会在Python的官方源pypi.python.org/pypi 下载,速度很慢,有时会因为超时会抛异常无法下载成功,所以可以选择一些比较稳定速度比较快的国内镜像来下载python库,可以显著加快模块安装速度。
为什么要设置代理?
当计算机被限制上网时(公司安全考虑)就不能连外网了,此时需要设置代理来解决;通常公司要求通过代理联网以保证网络安全(即网络连接外网时需要设置代理才可访问);有时由于国外官方pypi被墙,导致不可用,也可通过设置代理访问。
【注意】:pip和conda修改镜像源的方式有所不同
配置文件
设置代理和添加镜像源前先检测配置文件是否存在,没有则创建之。配置文件的路径(不同系统路径也有所不同):
1). Unix:$HOME/.config/pip/pip.conf
2). Mac:$HOME/Library/Application Support/pip/pip.conf
3). Windows:%APPDATA%\pip\pip.ini,%APPDATA%表示实际路径,例如C:\Users\user_xxx\AppData\Roaming,可在cmd里执行echo %APPDATA%命令查看
【补充】:
1). 凡是pip命令行的参数都可以在配置文件里定义其默认值!
2). which pip可以指出pip的位置(例如:/usr/local/bin/pip)
pip设置代理
1). 单次设置:(Windows和Linux系统一样)
直接在pip时设置代理即可:pip install some-package --proxy=http:// 代理服务器IP:端口号
1 pip install pandas --proxy=http://10.20.217.2:8080
2). 临时设置(重连后失效):
(1). Linux系统下:(在终端直接运行)
export http_proxy='http://代理服务器IP:端口号port'
export https_proxy='http://代理服务器IP:端口号port'
1 export http_proxy=http://109.123.111.111:8000 2 export https_proxy=http://109.123.111.111:8000
(2). windows系统下:(在终端直接运行)
set http_proxy='http://代理服务器IP:端口号port'
set http_proxy='http://代理服务器IP:端口号port'
1 set http_proxy=http://109.123.111.111:8000 2 set https_proxy=http://109.123.111.111:8000
【注意】:设置之后可能使用ping时还是无法连接外网,但是pip时可以的,因为ping的协议不一样不能使用这个代理、
3). 永久设置:( 打开配置文件)
(1). Linux系统下打开pip.conf配置文件添加内容如下:
[global]
proxy=http://xxx.xxx.xxx.xxx:8080 # 替换出自己的代理地址
1 1 # 在.pip目录创建并编辑pip.conf(没有配置文件时) 2 2 mkdir ~/.pip # 创建pip文件夹 3 3 cd ~/.pip # 创建pip.conf文件 4 4 5 5 vi pip.conf # 打开pip.conf文件 6 6 7 7 # 按i进入编辑模式: 8 8 [global] 9 9 proxy=http://10.20.217.2:8080 10 10 11 11 # 按ESC键,再输入wq保存即可。
(2). Windows系统下打开pip.ini配置文件添加内容如下:
[global]
proxy=http://xxx.xxx.xxx.xxx:8080
1 # 在pip目录创建并编辑pip.ini(配置文件不存在时) 2 cd C:\Users\(你的用户名) 3 mkdir pip # 创建pip文件夹 4 cd pip # 进入pip路径目录下 5 cd.>pip.ini # 创建pip.ini文件 6 7 # 然后打开C:\Users(用户名)\pip\pip.ini,添加如下内容: 8 [global] 9 proxy=http://10.20.217.2:8080
【补充】:Linux系统下也可以在/etc/profile配置文件里面永久设置
vim /etc/profile:
export http_proxy='http://代理服务器IP:端口号'
export https_proxy='http://代理服务器IP:端口号'
source /etc/profile
pip添加镜像源
1). 单次设置:(Windows和Linux系统一样)
直接在pip时添加镜像即可:pip install some-package -i 镜像地址
1 pip install pandas -i https://mirrors.aliyun.com/pypi/simple/
2). 永久设置
(1). Linux系统下打开pip.conf配置文件添加内容如下:
[global]
index-url = 镜像地址
1 # 在.pip目录创建并编辑pip.conf(没有配置文件时) 2 mkdir ~/.pip # 创建pip文件夹 3 cd ~/.pip # 创建pip.conf文件 4 5 vi pip.conf # 打开pip.conf文件 6 7 # 按i进入编辑模式: 8 [global] 9 index-url = https://pypi.mirrors.ustc.edu.cn/simple/ 10 11 # 按ESC键,再输入wq保存即可。
(2). windows系统下打开pip.ini配置文件添加内容如下:
[global]
index-url = 镜像地址
1 cd C:\Users\(你的用户名) 2 mkdir pip # 创建pip文件夹 3 cd pip # 进入pip路径目录下 4 cd.>pip.ini # 创建pip.ini文件 5 6 # 然后打开C:\Users(用户名)\pip\pip.ini,添加如下内容: 7 [global] 8 index-url = https://pypi.mirrors.ustc.edu.cn/simple/
pip一次性添加镜像和设置代理示例
1 pip install -i https://pypi.douban.com/simple pandas --proxy=http://10.20.217.2:8080
pip永久添加镜像和设置代理示例
1 # 打开相应的配置文件添加如下内容,(pip安装需要使用的https加密时,在此需要添加trusted-host) 2 [global] 3 index-url = http://mirrors.aliyun.com/pypi/simple/ # 这里使用的是阿里云的镜像源 4 proxy=http://xxx.xxx.xxx.xxx:8080 # 替换出自己的代理地址 5 6 [install] 7 trusted-host=mirrors.aliyun.com # 信任阿里云的镜像源,否则会有警告
conda设置代理和添加镜像
只需要在.condarc这个配置文件里设置(Windows和Linux都是这个文件),一般情况下.condarc文件在windows系统的C:\Users\<username>\目录下,找到此文件打开修改;在Linu系统下,终端输入 vim ~/.condarc 即可打开此文件。
如果文件不存在,就创建一个,创建.condarc文件命令:
1 conda config --add channels r
.condarc文件配置内容如下(详解):
1 # Add mirror source to speed up download 2 channels: 3 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ # (根据需求添加合适的镜像源) 4 - defaults 5 6 # Show channel URLs when displaying what is going to be downloaded and in ‘conda list‘ 7 show_channel_urls: true 8 allow_other_channels: True 9 10 # Set the agent 11 proxy_servers: 12 http: http://xxx.xxx.xxx.xxx:8080 13 https: https://xxx.xxx.xxx.xxx:8080 14 15 # 设置verify=False移除SSL认证时,解决InsecureRequestWarning警告 16 ssl_verify: false
conda查看源和代理修改是否成功的指令:
1 conda info # 查看源设置的是否有效(channel urlsd的变化) 2 3 conda config --show # 指令查看相关信息 4 5 conda config --show-sources # 查看配置文件的位置