Boto3이란
<aside>
- AWS SDK for Python으로 Python 코드로에서 aws의 다양한 서비스를 제어 및 사용할 수 있도록 해주는 라이브러리
</aside>
상호작용 방법 2가지
<aside>
Client
<aside>
- Low-Level API
- AWS의 REST/JSON API를 직접 호출
- 응답 데이터는 딕셔너리 형태로 반환
- 더 많은 기능을 제공하지만, 코드가 복잡함
EX)
s3_client = boto3.client('s3')
# 버킷 목록 가져오기
response = s3_client.list_buckets()
for bucket in response['Buckets']:
print(bucket['Name'])
- JSON 형식으로 반환
- response[’Buckets’] 에서 리스트를 추출 필요
</aside>
Resource
<aside>
- High-Level API
- 객체 지향 방식으로 AWS 리소스를 다룸
- 메서드를 활용해 더 직관적으로 코드 작성 가능
- 일부 AWS 서비스에서만 지원
EX)
s3_resource = boto3.resource('s3')
# 버킷 목록 가져오기
for bucket in s3_resource.buckets.all():
print(bucket.name)
- s3_resource.buckets.all() → 리스트를 바로 반환 → bucket.name으로 바로 접근 가능
</aside>