对象存储BOS-BOS Python SDK文档-百度开放云

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

BOS Python SDK文档

简介

本文档主要介绍BOS Python SDK的安装和使用。在使用本文档前,您需要先了解BOS的一些基本知识,并已开通了BOS 服务。若您还不了解BOS,可以参考产品描述和入门指南。

安装SDK工具包

运行环境

Python SDK工具包支持在Python 2.7环境下运行。

安装步骤

1.在官方网站下载BOS Python SDK。

2.进入下载目录。

3.在脚本文件中添加以下代码,即可以使用SDK包:

python setup.py install

SDK目录结构

baidubce

├──auth//公共权限目录

├──services//服务公共目录

│└──bos//BOS目录

└──http//Http请求模块

快速入门

1.初始化一个BOSClient。

bos_client是与BOS服务交互的客户端,BOS Python SDK的BOS操作都是通过bos_client完成的。用户可以参考BOSClient。完成初始化客户端的操作。

2.新建一个Bucket。

Bucket是BOS上的命名空间,相当于数据的容器,可以存储若干数据实体(Object)。用户可以参考新建Bucket来完成新建一个Bucket的操作。针对Bucket的命名规范,可以参考Bucket命名规范。

3.上传Object。

Object是BOS中最基本的数据单元,用户可以把Object简单的理解为文件。用户可以参考上传Object完成对Object的上传。

4.列出指定Bucket中的全部Object。

当用户完成一系列上传后,可以参考查看Bucket中Object列表来查看指定Bucket下的全部Object。

5.获取指定Object

用户可以参考获取Object来实现对一个或者多个Object的获取。

BOSClient

配置BOSClient

BOSClient是BOS服务的Python客户端,为调用者与BOS服务进行交互提供了一系列的方法。

在新建BOSClient之前,需要先创建配置文件对BOSClient进行配置,以下将此配置文件命名为bos_sample_conf.py,具体配置信息如下所示:

#!/usr/bin/env python

#coding=utf-8

#导入Python标准日志模块

import logging

#从Python SDK导入BOS配置管理模块以及安全认证模块

from baidubce.bce_client_configuration import BceClientConfiguration

from baidubce.auth.bce_credentials import BceCredentials

#设置访问BOS服务的代理

PROXY_HOST='localhost:8080'

#设置BosClient的Host,Access Key ID和Secret Access Key

bos_host="BOS_HOST"

access_key_id="AK"

secret_access_key="SK"

#设置日志文件的句柄和日志级别

logger=logging.getLogger('baidubce.services.bos.bosclient')

fh=logging.FileHandler("sample.log")

fh.setLevel(logging.DEBUG)

#设置日志文件输出的顺序、结构和内容

formatter=logging.Formatter('%(asctime)s-%(name)s-%(levelname)s-%(message)s')

fh.setFormatter(formatter)

logger.setLevel(logging.DEBUG)

logger.addHandler(fh)

#创建BceClientConfiguration

config=BceClientConfiguration(credentials=BceCredentials(access_key_id,secret_access_key),endpoint= bos_host)

注意:

1.访问BOS服务的代理参数PROXY_HOST可缺省。

2.针对日志文件,Logging有如下级别:DEBUG,INFO,WARNING,ERROR,CRITICAL。

新建BOSClient

在完成上述配置之后,参考如下代码新建一个BosClient。

#导入BOSClient配置文件

import bos_sample_conf

#导入BOS相关模块

from baidubce import exception

from baidubce.services import bos

from baidubce.services.bos import canned_acl

from baidubce.services.bos.bos_client import BosClient

#新建BOSClient

bos_client=BosClient(bos_sample_conf.config)

设置网络参数

用户可以设置一些网络参数:

#设置请求超时时间

bos_sample_conf.config.connection_timeout_in_mills(TIMEOUT)

#设置接收缓冲区大小

bos_sample_conf.config.recv_buf_size(BUF_SIZE)

#设置发送缓冲区大小

bos_sample_conf.config.send_buf_size(BUF_SIZE)

#设置连接重试策略

#三次指数退避重试

bos_sample_conf.config.retry_policy=BackOffRetryPolicy()

#不重试

bos_sample_conf.config.retry_policy=NoRetryPolicy()

参数说明

通过bos_client_configuration能指定的所有参数如下表所示:

参数说明

port BOS端口号

send_buf_size发送缓冲区大小

recv_buf_size接收缓冲区大小

connection_timeout_in_mills请求超时时间(单位:毫秒)

retry_policy连接重试策略,初始化Client时默认为三次指数退避Bucket

Bucket命名规范

Bucket既是BOS上的命名空间,也是计费、权限控制、日志记录等高级功能的管理实体。

•Bucket名称在一个Region中具有全局唯一性,且不能修改。

•存储在BOS上的每个Object都必须包含在一个Bucket中。

相关文档
最新文档