热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

七牛云存储PythonSDK运用教程基础引见

本教程旨在引见怎样运用七牛的PythonSDK来疾速地举行文件上传,下载,处置惩罚,治理等事情。装置起首,要运用Python的SDK必须要先装置。七牛的PythonSDK是开源的,

本教程旨在引见怎样运用七牛的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

开辟环境

Python的开辟环境有很多种挑选,假如喜好文本的体式格局,比方vim,emacs,sublime text等都是很好的挑选,假如你喜好IDE,那末最盛行的莫过于PyCharm了。PyCharm的最新版本到这里下载。

Access Key和Secret Key

我们晓得七牛云存储的权限校验机制基于一对密钥,离别称为Access KeySecret Key。个中Access Key是公钥,Secret Key是私钥。这一对密钥能够从七牛的背景猎取。
《七牛云存储Python SDK运用教程 - 基础引见》

小试牛刀

好了,做了上面的这些准备事情,我们就去上传一个简朴的文件,练练手。

python#coding=utf-8
__author__ = 'jemy'
'''
本例演示了一个简朴的文件上传。
这个例子内里,sdk依据文件的大小挑选是Form体式格局上传照样分片上传。
'''
import qiniu
accessKey = ""
secretKey = ""
#剖析效果
def parseRet(retData, respInfo):
if retData != None:
print("Upload file success!")
print("Hash: " + retData["hash"])
print("Key: " + retData["key"])
#搜检扩大参数
for k, v in retData.items():
if k[:2] == "x:":
print(k + ":" + v)
#搜检其他参数
for k, v in retData.items():
if k[:2] == "x:" or k == "hash" or k == "key":
continue
else:
print(k + ":" + str(v))
else:
print("Upload file failed!")
print("Error: " + respInfo.text_body)
#无key上传,http要求中不指定key参数
def upload_without_key(bucket, filePath):
#天生上传凭据
auth = qiniu.Auth(accessKey, secretKey)
upToken = auth.upload_token(bucket, key=None)
#上传文件
retData, respInfo = qiniu.put_file(upToken, None, filePath)
#剖析效果
parseRet(retData, respInfo)
def main():
bucket = "if-pbl"
filePath = "/Users/jemy/Documents/jemy.png"
upload_without_key(bucket, filePath)
if __name__ == "__main__":
main()

运转效果为:

Upload file success!
Hash: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8
Key: Fp0XR6tM4yZmeiKXw7eZzmeyYsq8

从上面我们能够看到,运用七牛的Python SDK上传文件的最基本的步骤是:

  1. 天生上传凭据
  2. 上传文件
  3. 剖析复兴效果

小结

综上所述,实在运用七牛的SDK来上传文件照样很简朴的,接下来的教程,我们将在这个例子的基础上逐渐相识更多关于文件上传的学问。


推荐阅读
author-avatar
窝窝六六柒柒巴巴
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有