适用于金山云对象存储(KS3)的简单 Python3 客户端
Project description
ks33requests
概述
一个很简单的、适用于 金山云 对象存储(KS3)的 Python3 客户端。
金山云 官方提供了 KS3 的 Python SDK,但在我启动这个项目(2019-06-10)时,仅提供 Python2 SDK。
考虑到 Python2 已经接近其生命周期的终点,我制作了这个简单的 Python3 KS3 客户端用于相关项目。
安装
-
pip 安装
pip install ks33requests
-
源代码安装
python setuptools.py install
-
Pipenv 安装
pipenv install ks33requests
如何使用
参见 notebooks 中的笔记
CHANGELOG
0.1.3
📅 Date : 2019-06-26
- New:
get_content_md5()
: 获取 KS3 样式的 MD5 BASE64 校验值
- Fix:
- 修订
conda
与pip
的定义文件中的几处错误 - 修订几处文档错误
- 修订
0.1.2.1
📅 Date : 2019-06-25
- Change:
- 构造
Client
时,如果不指定密钥对,将从环境变量KSYUN_ACCESS_KEY
与KSYUN_SECRET_KEY
获得 Client.send()
增加encoding
参数,用于对文本数据上传的支持
- 构造
- Fix:
- 几个有关文本数据上传 bug
- New:
- 几个测试用例
- Sphinx Docs
- Circle CI
- Code coverage
0.1
📅 Date : 2019-06-12
这实际上还是一个 Alpha 版本,但是为了在项目中顺利使用,且给它一个稳定的版本编号。
CONTRIBUTING
ℹ 注意:
这个项目需要 Python
3.5
及以上版本。
复刻项目代码
复刻项目代码到工作目录,然后切换到项目的目录:
cd path/to/your/workspace/directory/
git clone https://github.com/tanbro/ks33requests.git
cd ks33requests
准备开发环境
强烈建议在 virtual environment 中进行开发工作。
-
如果使用标准库:
使用标准库的 venv 与 pip 直接新建名为
venv
的虚拟环境目录,将本项目以“开发模式”安装到这个环境,并安装开发工作所要使用的包:path/of/your/python -m venv venv venv/bin/python setup.py develop venv/bin/python -m pip install -r requires/dev.txt
-
如果使用 Pipenv:
使用 Pipenv 命令直接安装:
pipenv install --dev
-
如果使用 conda
使用 conda 从配置文件新建一个专用于这个项目的、名为
ks33requests-dev
的环境,然后激活它,将本项目以“开发模式”安装到这个环境:conda env create -f environment.yml conda activate ks33requests-dev python setup.py develop
XML Schema
金山云 KS3 的 WebAPI 数据结构有许多与S3兼容。 所以,这个项目直接使用考虑来自 http://s3.amazonaws.com/doc/2006-03-01/AmazonS3.xsd 的 Schema。
我们使用 generateDS 工具,从xsd
文件生成 Python 类型定义:
mkdir -p schemas
wget http://s3.amazonaws.com/doc/2006-03-01/AmazonS3.xsd -P schemas
generateDS.py -f -o s3_api.py -s s3_sub.py --super=s3_api schemas/AmazonS3.xsd
生成的源代码文件复制到名称空间 ks33requests.schemas
中,小幅修改 s3_sub.py
即可使用。
运行测试用例
python setup.py test
测试用例很少,陆续补充中...
Docs
如果模块有增减,需要删除原来的 Sphinx-Docs API 自动文档并重新生成:
rm -rf docs/ks3requests.rst docs/api
sphinx-apidoc -e -f -o docs/api src/ks33requests src/ks33requests/schemas/s3_*.py
AUTHORS
-
Liu Xue Yan (liu_xue_yan@foxmail.com)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ks33requests-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3261033317f46a7e8d21b2e033b331d00da5cacb8f2fbc25be5f83b10dcfc14f |
|
MD5 | 09affe60aadf43044d1a4cc686c6bafa |
|
BLAKE2b-256 | ced49d52d6dbbb2418d3f029319c6bb235ee34cae2625c84dacd3e5d0d99a7dc |