Python沙箱環境搭建

有人說 Virtualenv、Fabric 和 PIP 是 Pythoneer 的三大神器python

上面是python界流行的一句話,具體的:bash

  • Virtualenv 用於建立一個隔離的python沙箱環境
  • Fabric 用於自動化遠程部署項目
  • PIP 則是Python的包管理工具

Virtualenv,python界最流行的沙箱工具

  • Python包之間有強版本依賴關係,每每包版本的不一樣就會形成程序運行失敗
  • 不一樣的項目咱們每每須要不一樣的包,因此咱們很難在單一的系統python環境下作到徹底兼容

virtualenv很好的解決了這些問題,它經過修改環境變量爲咱們提供了一個 在系統環境以外的隔離的獨立的python環境,在這個沙箱環境中你能夠自由組合不一樣版本的Package,甚至是Python解釋器。scrapy

此外,相似的工具還有另外兩個工具

  1. zc.buildout 一個更爲強大的python構建系統,較之於virtualenv有較高的定製特性,但比較複雜
  2. pyenv 僅支持切換不一樣版本的python解釋器
利用virtualenv搭建沙箱環境
pip install virtualenv #安裝virtualenv

#建立一個名爲venv1的沙箱環境
#--no-site-packages選項將禁用沙箱繼承系統pyton環境的package
virualenv --no-site-packages venv1 #該命令將自動建立一個venv1目錄,並在其中安裝python解釋器,pip工具等等

#沙箱環境的啓動和關閉
source venv1/script/activate
source venv1/script/deactivate

virtualenv搭建沙箱環境時有幾點須要留意ui

  • 系統須要支持軟鏈接,這涉及到virtualenv的運行方式
  • 請勿使用root帳號建立環境,不然後期package的安裝及使用中會出現各類意想不到的權限錯誤

PIP,強大的python包管理器

#pip使用以前須要安裝幾個依賴
sudo yum install python-devel openssl-devel libxml2-devel libxslt-devel

# 2.7.9以前的python版本須要升級下pip並安裝幾個python包,不然後續pip安裝包過程當中會有報錯
pip install --upgrade pip
pip install cryptography
pip install ndg-httpsclient

## 使用PIP安裝包示例 ##
pip install scrapy == 1.1.1 //安裝指定版本的scrapy
#亦可經過requirements配置文件一次性自動安裝全部依賴
pip install -r requirement.txt
相關文章
相關標籤/搜索