如果您需要管理OSS存儲空間、上傳下載文件、管理數據、進行圖片處理等,可以先安裝OSS Python SDK。本文介紹如何安裝OSS Python SDK。
環境準備
安裝Python。
OSS Python SDK適用于Python 2.6、2.7、3.3、3.4、3.5、3.6、3.7、3.8及以上版本。
說明Windows環境中安裝Python SDK時,需確保Visual C++版本為15.0或以上。
安裝完成后,執行以下命令查看Python版本。
python --version
成功返回示例如下。以下示例表明您已成功安裝Python 3.8.2。
Python 3.8.2
下載SDK
更多信息,請參見OSS API文檔。
安裝python-devel
完成環境準備后,您需要先要安裝python-devel包。
OSS Python SDK需要crcmod計算CRC校驗碼,而crcmod依賴python-devel包中的Python.h文件。如果系統缺少Python.h文件,雖然之后安裝OSS Python SDK不會失敗,但crcmod的C擴展模式安裝會失敗。如果crcmod的C擴展模式安裝失敗,在上傳、下載計算CRC校驗碼時會使用純Python模式進行CRC數據校驗。純Python模式的性能遠差于C擴展模式,從而導致上傳、下載等操作效率非常低下。
Windows
在Windows系統安裝Python時,會將Python依賴的頭文件一并安裝,因此無需安裝python-devel。
macOS
在macOS系統安裝Python時,會將Python依賴的頭文件一并安裝,因此無需安裝python-devel。
CentOS
執行以下命令安裝python-devel。
sudo yum install python-devel
RHEL
執行以下命令安裝python-devel。
sudo yum install python-devel
Fedora
執行以下命令安裝python-devel。
sudo yum install python-devel
Debian
執行以下命令安裝python-devel。
sudo apt-get install python-dev
Ubuntu
執行以下命令安裝python-devel。
sudo apt-get install python-dev
安裝SDK
安裝python-devel后,您可以選擇以下方式安裝OSS Python SDK。
pip
安裝pip。
Python 2.7.9+或者Python 3.4+以上版本默認已安裝pip。
執行以下命令安裝最新版本的OSS Python SDK。
pip install oss2
源碼
驗證SDK
安裝SDK后,執行以下步驟驗證已安裝的OSS Python SDK。
執行以下命進入Python環境。
python
執行以下命令查看OSS Python SDK版本。
import oss2 oss2.__version__
成功返回示例如下。以下示例表明您已經成功安裝OSS Python SDK 2.18.3。
'2.18.3'
常見問題
報錯No module named _crcfunext
問題現象
使用OSS Python SDK調用上傳、下載接口較其他工具如ossutil或者其他SDK慢了很多
問題原因
編譯crcmod時,由于_crcfunext.so依賴Python.h文件,而系統中缺少這個頭文件,因此_crcfunext.so庫生成失敗。關于crcmod的更多信息,請參見crcmod introduction。
解決方案
驗證crcmod的C擴展模式是否安裝成功。
執行以下命令進入Python環境。
python
執行以下命令導入crcmod模塊下的_crcfunext的C擴展模塊。
import crcmod._crcfunext
出現以下錯誤提示,表明crcmod庫的C擴展模式安裝失敗。
Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named _crcfunext
根據系統環境選擇解決方案。
Windows
下載crcmod-1.7.win32-py2.7.msi或者其他版本的.msi文件。
說明win32位的crcmod同時兼容win32以及win64系統。
安裝.文件mis并在安裝過程中指定crcmod的安裝路徑到您本地python安裝路徑下的Lib\site-packages文件夾。例如D:\python\Lib\site-packages\。
安裝完成后,再執行驗證crcmod的步驟。
Linux
對于Linux系統,如果出現該問題,請執行以下步驟:
執行以下命令卸載crcmod。
pip uninstall crcmod
安裝python-devel。具體操作,請參見安裝python-devel。
執行以下命令重新安裝crcmod。
pip install crcmod
如果執行上述步驟依然安裝失敗,卸載crcmod,然后執行以下命令查看安裝失敗的詳細原因。
pip install crcmod -v
報錯No module named 'Crypto'
問題現象
如果執行程序時出現No module named 'Crypto'
錯誤,
問題原因
不存在Crypto
或存在crypto
。
解決方案
查看本地Python安裝路徑下的Crypto,例如D:\python3.9\Lib\site-packages
。
如果不存在Crypto,執行以下命令。
python -m pip install --upgrade setuptools
如果存在crypto(首字母小寫),將首字母改為大寫,然后再次嘗試啟動程序。
提示“不是內部或外部命令”
Windows環境中,如果提示“不是內部或外部命令”,請在環境變量中編輯Path
,增加Python和pip的安裝路徑。pip的安裝路徑一般為Python所在目錄的Scripts文件夾。編輯環境變量后,您可能需要重啟電腦使環境變量生效。
安裝OSS Python SDK失敗
如果安裝OSS Python SDK失敗,執行以下命令卸載后重新安裝。
pip uninstall oss2
如何升級OSS Python SDK
執行以下命令升級OSS Python SDK。
pip install --upgrade oss2