1. 程式人生 > 程式設計 >python設定代理和新增映象源的方法

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:埠號

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'

 export http_proxy=http://109.123.111.111:8000
 export https_proxy=http://109.123.111.111:8000

(2). windows系統下:(在終端直接執行)

  set http_proxy='http://代理伺服器IP:埠號port'

  set http_proxy='http://代理伺服器IP:埠號port'

set http_proxy=http://109.123.111.111:8000
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 # 替換出自己的代理地址

  # 在.pip目錄建立並編輯pip.conf(沒有配置檔案時)
  mkdir ~/.pip   # 建立pip資料夾
  cd ~/.pip     # 建立pip.conf檔案 
  vi pip.conf    # 開啟pip.conf檔案 
  # 按i進入編輯模式:
  [global]
  proxy=http://10.20.217.2:8080
 # 按ESC鍵,再輸入wq儲存即可。

(2). Windows系統下開啟pip.ini配置檔案新增內容如下:

  [global]

  proxy=http://xxx.xxx.xxx.xxx:8080

 # 在pip目錄建立並編輯pip.ini(配置檔案不存在時)
 cd C:\Users\(你的使用者名稱)  
 mkdir pip        # 建立pip資料夾
 cd pip           # 進入pip路徑目錄下
 cd.>pip.ini       # 建立pip.ini檔案
 # 然後開啟C:\Users(使用者名稱)\pip\pip.ini,新增如下內容:
 [global]
 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 映象地址

 pip install pandas -i https://mirrors.aliyun.com/pypi/simple/

2). 永久設定

(1). Linux系統下開啟pip.conf配置檔案新增內容如下:

[global]

index-url = 映象地址

 # 在.pip目錄建立並編輯pip.conf(沒有配置檔案時)
 mkdir ~/.pip   # 建立pip資料夾
 cd ~/.pip     # 建立pip.conf檔案 
 vi pip.conf    # 開啟pip.conf檔案 
 # 按i進入編輯模式:
 [global]
 index-url = https://pypi.mirrors.ustc.edu.cn/simple/
 # 按ESC鍵,再輸入wq儲存即可。

(2). windows系統下開啟pip.ini配置檔案新增內容如下:

[global]

index-url = 映象地址

 cd C:\Users\(你的使用者名稱)  
 mkdir pip        # 建立pip資料夾
 cd pip           # 進入pip路徑目錄下
 cd.>pip.ini       # 建立pip.ini檔案
 # 然後開啟C:\Users(使用者名稱)\pip\pip.ini,新增如下內容:
 [global]
 index-url = https://pypi.mirrors.ustc.edu.cn/simple/

pip一次性新增映象和設定代理示例

 pip install -i https://pypi.douban.com/simple pandas --proxy=http://10.20.217.2:8080

pip永久新增映象和設定代理示例

# 開啟相應的配置檔案新增如下內容,(pip安裝需要使用的https加密時,在此需要新增trusted-host)
 [global]
 index-url = http://mirrors.aliyun.com/pypi/simple/ # 這裡使用的是阿里雲的映象源
 proxy=http://xxx.xxx.xxx.xxx:8080          # 替換出自己的代理地址
 [install]
 trusted-host=mirrors.aliyun.com           # 信任阿里雲的映象源,否則會有警告

conda設定代理和新增映象

只需要在.condarc這個配置檔案裡設定(Windows和Linux都是這個檔案),一般情況下.condarc檔案在windows系統的C:\Users\<username>\目錄下,找到此檔案開啟修改;在Linu系統下,終端輸入 vim ~/.condarc 即可開啟此檔案。

如果檔案不存在,就建立一個,建立.condarc檔案命令:

conda config --add channels r

.condarc檔案配置內容如下(詳解):

 # Add mirror source to speed up download
 channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/  # (根據需求新增合適的映象源)
  - defaults
 # Show channel URLs when displaying what is going to be downloaded and in ‘conda list‘
 show_channel_urls: true
 allow_other_channels: True 
 # Set the agent
 proxy_servers:
  http: http://xxx.xxx.xxx.xxx:8080
  https: https://xxx.xxx.xxx.xxx:8080
 # 設定verify=False移除SSL認證時,解決InsecureRequestWarning警告
 ssl_verify: false

conda檢視源和代理修改是否成功的指令:

 conda info            # 檢視源設定的是否有效(channel urlsd的變化) 
conda config --show       # 指令檢視相關資訊 
 conda config --show-sources   # 檢視配置檔案的位置

總結

以上所述是小編給大家介紹的python設定代理和新增映象源介紹,希望對大家有所幫助,也非常感謝大家對我們網站的支援!