国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

通過Python來使用七牛云存儲的方法詳解

2020-01-04 17:59:19
字體:
供稿:網(wǎng)友

這篇文章主要介紹了通過Python來使用七牛云存儲的方法詳解,七牛云存儲是國內(nèi)領(lǐng)先的服務(wù)器數(shù)據(jù)備份解決方案商,需要的朋友可以參考下

本教程旨在介紹如何使用七牛的Python SDK來快速地進行文件上傳,下載,處理,管理等工作。

安裝

首先,要使用Python的SDK必須要先安裝。七牛的Python SDK是開源的,托管在Github上面,項目地址為https://github.com/qiniu/python-sdk。

安裝的方式可以如項目的說明上所說,用pip install qiniu。當然也可以直接clone一份源代碼下來直接使用。我一般喜歡直接clone源代碼,這樣的話,如果要對SDK做一些改動也是十分容易的。

最新版本的Python SDK需要依賴requests庫,所以要提前安裝好。安裝方式當然也可以用pip install requests。

開發(fā)環(huán)境

Python的開發(fā)環(huán)境有很多種選擇,如果喜歡文本的方式,比如vim,emacs,sublime text等都是很好的選擇,如果你喜歡IDE,那么最流行的莫過于PyCharm了。PyCharm的最新版本到這里下載。

Access Key和Secret Key

我們知道七牛云存儲的權(quán)限校驗機制基于一對密鑰,分別稱為Access Key和Secret Key。其中Access Key是公鑰,Secret Key是私鑰。這一對密鑰可以從七牛的后臺獲取。

通過Python來使用七牛云存儲的方法詳解

小試牛刀

好了,做了上面的這些準備工作,我們就去上傳一個簡單的文件,練練手。

 

 
  1. #coding=utf-8 
  2. __author__ = 'jemy' 
  3. ''
  4. 本例演示了一個簡單的文件上傳。 
  5.  
  6. 這個例子里面,sdk根據(jù)文件的大小選擇是Form方式上傳還是分片上傳。 
  7. ''
  8. import qiniu 
  9.  
  10. accessKey = "<Your Access Key>" 
  11. secretKey = "<Your Secret Key>" 
  12.  
  13. #解析結(jié)果 
  14. def parseRet(retData, respInfo): 
  15. if retData != None: 
  16. print("Upload file success!"
  17. print("Hash: " + retData["hash"]) 
  18. print("Key: " + retData["key"]) 
  19.  
  20. #檢查擴展參數(shù) 
  21. for k, v in retData.items(): 
  22. if k[:2] == "x:"
  23. print(k + ":" + v) 
  24.  
  25. #檢查其他參數(shù) 
  26. for k, v in retData.items(): 
  27. if k[:2] == "x:" or k == "hash" or k == "key"
  28. continue 
  29. else
  30. print(k + ":" + str(v)) 
  31. else
  32. print("Upload file failed!"
  33. print("Error: " + respInfo.text_body) 
  34.  
  35. #無key上傳,http請求中不指定key參數(shù) 
  36. def upload_without_key(bucket, filePath): 
  37. #生成上傳憑證 
  38. auth = qiniu.Auth(accessKey, secretKey) 
  39. upToken = auth.upload_token(bucket, key=None) 
  40.  
  41. #上傳文件 
  42. retData, respInfo = qiniu.put_file(upToken, None, filePath) 
  43.  
  44. #解析結(jié)果 
  45. parseRet(retData, respInfo) 
  46.  
  47.  
  48. def main(): 
  49. bucket = "if-pbl" 
  50. filePath = "/Users/jemy/Documents/jemy.png" 
  51. upload_without_key(bucket, filePath) 
  52.  
  53.  
  54. if __name__ == "__main__"
  55. main() 

運行結(jié)果為:

 

 
  1. Upload file success! 
  2. Hash: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8 
  3. Key: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8 

從上面我們可以看到,使用七牛的Python SDK上傳文件的最基本的步驟是:

生成上傳憑證

上傳文件

解析回復(fù)結(jié)果

小結(jié)

綜上所述,其實使用七牛的SDK來上傳文件還是很簡單的,接下來的教程,我們將在這個例子的基礎(chǔ)上逐步了解更多關(guān)于文件上傳的知識。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 邻水| 筠连县| 昆明市| 丰顺县| 乐陵市| 皋兰县| 遂平县| 萝北县| 九寨沟县| 漯河市| 红原县| 独山县| 资阳市| 乌苏市| 大洼县| 乌拉特后旗| 滁州市| 探索| 临洮县| 夏津县| 浦城县| 慈溪市| 屯昌县| 富阳市| 冷水江市| 高雄县| 汾阳市| 江阴市| 淮阳县| 鲁山县| 新化县| 阿尔山市| 且末县| 麻栗坡县| 泰宁县| 洛川县| 鄂温| 张家川| 修文县| 和平县| 乌拉特中旗|