python boto和boto3操作bucket的示例


Posted in Python onOctober 30, 2020

boto操作

import datetime

import boto.s3.connection
from boto.s3.key import Key
conn = boto.connect_s3(
  aws_access_key_id="123456",
  aws_secret_access_key="123456",
  host="127.0.0.1",
  port=8080,
  is_secure=False,
  calling_format=boto.s3.connection.OrdinaryCallingFormat(),
)

str_bucket_name = "bucket_test"
conn.create_bucket(str_bucket_name) # 创建bucket

for bucket in conn.get_all_buckets(): # 获取所有bucket
  # 将实际转为本地时间
  print({"name": bucket.name, "create_date": str(datetime.datetime.strptime(bucket.creation_date, "%Y-%m-%dT%H:%M:%S.%fZ") + datetime.timedelta(hours=8))})


# 删除指定的bucket
for bucket in conn.get_all_buckets():
  if bucket.name == str_bucket_name:
    for key in bucket.list(): # 必须将bucket里清空后,才能删除掉对应的bucket
      bucket.delete_key(key.name)
    conn.delete_bucket(bucket.name)
    break

# 存储文件流或字符串中的数据
key = Key('hello.txt')

key.set_contents_from_file('/tmp/hello.txt')

使用boto进行https的连接失败,  validate_certs设置成True或False没有任何作用

is_secure为Ture时,遇到的报错如下

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1076)

is_secure为False时,遇到的报错如下

http.client.RemoteDisconnected: Remote end closed connection without response

遂更换了botot3

boto3,下面的示例是用的https的(boto对于https的连接不上,可能是因为我的证书是自制的,所以才找了这个包)

import urllib3
import boto3

urllib3.disable_warnings()

s3 = boto3.resource(
  service_name='s3',
  aws_access_key_id="123456",
  aws_secret_access_key="123456",
  endpoint_url='https://192.168.150.20:8080',
  verify=False
)

str_bucket_name = "bucket_test"
s3.create_bucket(Bucket=str_bucket_name)


for bucket in s3.buckets.all(): # 获取所有bucket
  # 将实际转为本地时间
  print({"name": bucket.name, "create_date": datetime.datetime.strftime(bucket.creation_date + datetime.timedelta(hours=8), "%Y-%m-%d %H:%M:%S")})

# 删除指定的bucket
for bucket in s3.buckets.all():
  if bucket.name == str_bucket_name:
    bucket.objects.all().delete()  # 等价于下面两行
    # for obj in bucket.objects.all():
    #   obj.delete()
    bucket.delete()

# 存储文件流或字符串中的数据
s3.Object('mybucket', 'hello.txt').put(Body=open('/tmp/hello.txt', 'rb'))

以上就是python boto和boto3操作bucket的示例的详细内容,更多关于python 操作bucket的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
详解Python文本操作相关模块
Jun 22 Python
Numpy array数据的增、删、改、查实例
Jun 04 Python
基于Pandas读取csv文件Error的总结
Jun 15 Python
Linux下python3.7.0安装教程
Jul 30 Python
python如何生成各种随机分布图
Aug 27 Python
PyCharm鼠标右键不显示Run unittest的解决方法
Nov 30 Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
Dec 10 Python
python搜索包的路径的实现方法
Jul 19 Python
python的help函数如何使用
Jun 11 Python
Python Switch Case三种实现方法代码实例
Jun 18 Python
Python实现邮件发送的详细设置方法(遇到问题)
Jan 18 Python
python使用glob检索文件的操作
May 20 Python
python 多进程和协程配合使用写入数据
Oct 30 #Python
python打包生成so文件的实现
Oct 30 #Python
pytorch 移动端部署之helloworld的使用
Oct 30 #Python
把Anaconda中的环境导入到Pycharm里面的方法步骤
Oct 30 #Python
Python模拟登录和登录跳转的参考示例
Oct 30 #Python
python中watchdog文件监控与检测上传功能
Oct 30 #Python
GitHub上值得推荐的8个python 项目
Oct 30 #Python
You might like
PHP与MySQL开发中页面出现乱码的一种解决方法
2007/07/29 PHP
php中几种常见安全设置详解
2010/04/06 PHP
创建配置文件 用PHP写出自己的BLOG系统 2
2010/04/12 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
js活用事件触发对象动作
2008/08/10 Javascript
一个判断email合法性的函数[非正则]
2008/12/09 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
倾力总结40条常见的移动端Web页面问题解决方案
2016/05/24 Javascript
react native与webview通信的示例代码
2017/09/25 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
实例分析JS中的相等性判断===、 ==和Object.is()
2019/11/17 Javascript
基于vuex实现购物车功能
2021/01/10 Vue.js
[01:09:24]Ti4开幕式
2014/07/19 DOTA
[46:43]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第二局
2016/03/02 DOTA
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Win10下Python环境搭建与配置教程
2016/11/18 Python
python使用tornado实现简单爬虫
2018/07/28 Python
python交易记录链的实现过程详解
2019/07/03 Python
Python八皇后问题解答过程详解
2019/07/29 Python
Python 仅获取响应头, 不获取实体的实例
2019/08/21 Python
如何使用python socket模块实现简单的文件下载
2020/09/04 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
基于CSS3实现立方体自转效果
2016/03/01 HTML / CSS
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
ECHT官方网站:男女健身服
2020/02/14 全球购物
英文求职信写作小建议
2014/02/16 职场文书
户籍证明模板
2014/09/28 职场文书
2014年学生会生活部工作总结
2014/11/07 职场文书
护士自我推荐信范文
2015/03/24 职场文书
2015年服务员工作总结
2015/04/08 职场文书
在职证明格式样本
2015/06/15 职场文书
实用求职信模板范文
2019/05/13 职场文书
党风廉政建设心得体会
2019/05/21 职场文书
python如何利用cv2模块读取显示保存图片
2021/06/04 Python