Python 转移文件至云对象存储的方法

作者:Python实用宝典 时间:2022-02-01 04:28:19 

对象存储(Cloud Object Storage,COS)是一种存储海量文件的分布式存储服务,具有高扩展性、低成本、可靠安全等优点。

对象存储有什么用呢?对于站长而言,比如Python实用宝典网站的服务器位于腾讯云香港,大陆访问速度会比较慢,这时候我可以将图片等静态资源转移到对象存储上,以提高用户的访问速度。

实际上,这两天我就对Python实用宝典做了这样的调整,搭配上懒加载,效果极佳,用户访问并渲染图片的过程所耗费的时间大大减少,大家可以访问Python实用宝典网体验一下:
https://pythondict.com

那么对于非站长的普通用户有什么用?相比于其他什么百度网盘之类的产品,COS最重要的优势是:

  • 上传下载不限速,数据中心多地任选

  • 能实现文件分享功能,同样不限速

  • 能自动创建文件历史备份,方便回溯办公文件

  • 支持各平台用客户端管理文件,电脑端甚至还可直接将网盘挂载为一个虚拟磁盘

  • 价格按用量计费(存储量、下行流量),免费额度用完后,你可能一个月大约也才需要花费 6 元

像腾讯云这样的大云服务商,每个月都给用户提供了50G的免费容量:

Python 转移文件至云对象存储的方法

非常好,下面大家可以跟着我一起尝试使用一下,或许你会爱上这个产品。

0.创建存储桶

进入腾讯云的对象存储页面:

https://console.cloud.tencent.com/cos5/bucket#

Python 转移文件至云对象存储的方法

选择创建存储桶,可以随意命名你的数据桶,地域可以选择离你最近的。注意访问权限这一项,如果你希望你的朋友也能下载数据桶内的文件,一定要选择公有读私有写。

1.安装

接下来说说怎么用Python将静态资源转移到腾讯云COS上。

Coscmd是腾讯云官方基于Python推出的上传工具,使用起来非常方便。

使用 pip 安装 coscmd:


pip install coscmd

如果直接安装失败了,可以尝试源码安装:


git clone https://github.com/tencentyun/coscmd.git
cd coscmd
python setup.py install

可以使用 coscmd -v 查看版本号


# coscmd -v
coscmd 1.8.6.16

2.配置

安装完成之后我们还需要一些参数配置,配置密钥、存储桶地域等。我们迁移数据时仅仅只需要配置一些简单的参数即可:


coscmd config -a SecretID -s SecretKey -b BucketName-APPID -r region

BucketName-APPID 是存储桶名称,region 为存储桶所在地域,SecretID 和 SecretKey 可以在控制台获取,如果没有的话直接创建一个:
https://console.cloud.tencent.com/cam/capi

Python 转移文件至云对象存储的方法


创建后如上图下方列表所示,有APPID、SecretID 和 SecretKey,那么命令就如:


coscmd config -a AChT4ThiXAbpBDEFGhT4ThiXAbp**** -s WE54wreefvds3462refgwewe**** -b examplebucket-1250000000 -r ap-beijing

3. 迁移

下面以迁移本地附件到 COS 为例,演示一下 COSCMD 的使用

COSCMD 可以上传文件也可以直接上传文件夹,命令为:


#上传文件
coscmd upload

#上传文件夹
coscmd upload -r

这样我们就可以使用如下命令将媒体库的文件上传到 COS 中:


# home/ 指将媒体库里的文件存放到COS的home文件夹中
coscmd upload -r 你的媒体库文件夹地址 存放到COS的具体位置如home/

#同步上传,跳过 md5 相同的文件
coscmd upload -rs 你的媒体库文件夹地址 home/

#忽略 .mp3 和 .gif 的后缀文件
coscmd upload -rs 你的媒体库文件夹地址 home/ --ignore *.mp3,*.gif

我们需要将媒体库的图片上传到 COS 中,存放的路径则因使用而异。

如果是网站的话,比如WordPress 的媒体库存储路径建议使用 wp-content/uploads/,如果你是为了个人使用,可以上传到任意位置,建议使用:home/.

Python 转移文件至云对象存储的方法

上传完成后如上图所示,你可以在文件列表中找到你刚上传的这些媒体文件。

当然,COS也支持手动上传文件:

Python 转移文件至云对象存储的方法

如果你按照我的步骤创建了一个公有读私有写的数据桶,那么上传的这些资源也支持分享文件下载地址给别人:

Python 转移文件至云对象存储的方法

上图中显示的对象地址,就可以拿来分享给你任何朋友下载,不限速!不限速!不限速!怎么样,是不是超香?

来源:https://blog.csdn.net/u010751000/article/details/111148698

标签:Python,云对象存储,转移文件
0
投稿

猜你喜欢

  • JavaScript中的函数声明和函数表达式区别浅析

    2023-08-05 23:22:36
  • escape、encodeURI、encodeURIComponent等方法的区别比较

    2024-05-13 09:36:40
  • 表单元素事件 (Form Element Events)

    2024-04-29 13:44:40
  • 跟我学习javascript的闭包

    2024-04-23 09:11:51
  • django 简单实现登录验证给你

    2023-07-25 02:25:46
  • JS实现颜色动态淡化效果

    2024-02-24 13:19:51
  • Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决

    2022-09-09 18:33:23
  • 如何用python实现一个HTTP连接池

    2021-10-20 04:52:03
  • mysql常用监控脚本命令整理

    2024-01-16 14:42:07
  • 对pytorch网络层结构的数组化详解

    2023-09-02 12:10:09
  • JavaScript简介

    2024-04-10 10:43:17
  • innerHTML,outerHTML,innerText,outerText用法

    2008-02-15 12:22:00
  • tensorboard实现同时显示训练曲线和测试曲线

    2023-05-18 04:55:34
  • 详解Python命令行解析工具Argparse

    2022-12-11 15:49:28
  • 女装类视觉设计分享

    2009-10-30 18:36:00
  • MSSQL数据类型及长度限制详细说明

    2024-01-25 06:01:09
  • Django实现WebSocket在线聊天室功能(channels库)

    2023-04-01 00:41:55
  • Git可视化教程之Git Gui的使用

    2022-12-10 03:12:06
  • JS本地刷新返回上一页代码

    2023-08-06 13:59:57
  • 详解python实现邮件解析的方法

    2023-02-19 04:03:20
  • asp之家 网络编程 m.aspxhome.com