Day 02
嗨,今天是第二天,先來說明virtualenv
這件小事好了?
我在使用Scrapy
這個套件的時候遇到它預設是使用Python2
的版本的問題,而我所想到解決的方法是建立一個單純只有Python3
的虛擬環境去執行它。
那為何不使用Python2
呢?單純做爬取其實Python2
就行了吧?若只有單純要執行Scrapy
沒問題,
但是後來發現python-dotenv
這個套件似乎無再支援Python2
了,若不用這個套件就必須將SQL
(ip, 帳號, 密碼)資訊直接寫在程式碼中,而不是寫在.env
中。這個套件之後使用到會再介紹,本篇文章先不多說明啦。
當然使用virtualenv
也有幾個優點:
總之,我們會在開啟一個專案前先建立一個環境(提醒:本系列文章都會用這一個,而不是一篇文章一個),來安裝該專案需要的套件,跟本機電腦的Python套件不相衝突。
若你的電腦pip
預設為python3
版本,則把pip3
改成pip
。
pip3 install virtualenv
安裝完成之後,就可以使用virtualenv
建立虛擬環境了:
virtualenv -p /path/to/python3 my_env_name
若不知道Python3的路徑,可以使用which
:
which python3
看到/usr/local/bin/python3
就是我本機上Python3路徑,舉例:
virtualenv -p /usr/local/bin/python3 plusoneEnv
# Running virtualenv with interpreter /usr/local/bin/python3
# Using base prefix '/Library/Frameworks/Python.framework/Versions/3.6'
# New python executable in /Users/plusone/plusoneEnv/bin/python3
# Also creating executable in /Users/plusone/plusoneEnv/bin/python
# Installing setuptools, pip, wheel...done.
執行完上面的指令後,可以看到目錄多了一個plusoneEnv
資料夾,現在,啟動虛擬環境:
source plusoneEnv/bin/activate
如圖,可以看到以下畫面,多了一個(plusoneEnv)
,用pip list
查詢有哪些安裝的套件只會看到基本的三個套件:
就可以用pip
安裝需要的套件了。
deactivate
可以看到執行deactivate
指令後,就退出虛擬環境了。
好的,今天說明了如何安裝、建立一個獨立的Python虛擬環境,解決了套件版本可能會衝突的問題。
請愛用Virtualenv,今天就這樣啦謝謝各位。