在python中使用阿里云的OSS

Wen 发布于 2019-08-06 16 次阅读


为什么我突然想了解阿里云OSS呢?

之前用宝塔有一个备份网站信息到阿里云OSS的功能,然后我就想了解阿里云OSS,然后发现可以用Python进行上传文件,我又对Python有点了解,就决定用它来备份我的这个网站,用以以防万一

这里可以了解阿里云OSS Python用法 官方文档

要想Python支持阿里云OSS,得先装阿里云OSS的模块

在python环境中执行,目前我的是python3.7,这是OSS的SDK

pip install oss2

得先加载Access Key

auth =oss2.Auth(' <你的AccessKeyId> ', ' <你的AccessKeySecret> ')<br> bucket = oss2.Bucket(auth, ' <你的访问域名> ', ' 你的Bucket> ')

详细的官方讲的很清楚,这里不多说

上传(这是简单上传,更多的看官档)

bucket.put_object_from_file('<这是在Bucket中的文件名>', '<要上传的文件,与前面的一样也可以>')

还可以这样

```bucket.put_object(<文件名>, <文件内容>)

<pre><code class="line-numbers">这个得必须以二进制的方式打开文件,你可以看[这里](https://help.aliyun.com/document_detail/88426.html?spm=a2c4g.11186623.6.884.77cb11a7ihI3Kt)

上传怎么能没进度条呢?
```python
def percentage(consumed_bytes, total_bytes):
if total_bytes:
rate = int(100 * (float(consumed_bytes) / float(total_bytes)))
print('\r{0}% '.format(rate))
sys.stdout.flush()

然后把进度回调函数progress_callback=percentage加进上传函数中,例如

bucket.put_object_from_file('<这是在Bucket中的文件名>', '<要上传的文件,与前面的一样也可以>', 'progress_callback=percentage')

另一条也一样

其实我还了解了更多的。也想写出来,可眼睛已经不在抗议了。。。。(其实是想偷懒^_^)更多的去官档把,这只是冰山一角。

对于备份我的网站,我已经有了大概的方法,有空写出来、完善。(来自5年后的吐槽:写了吗?写了吗?)

此作者没有提供个人介绍
最后更新于 2024-03-28