複数のクライアント
Sam は、同時に複数のサービスを扱うことがよくあると分かっています。そこで boto3 で異なる 2 つのサービス用に、別々のクライアントを作成する練習をしたいと考えています。
ワークフローを構築するときは、彼女のコンピュータで実行されるスクリプトを使って、複数の Amazon Web Services を相互に連携させます。
彼女の AWS キー ID と AWS シークレットは、それぞれ AWS_KEY_ID と AWS_SECRET に保存されています。
あなたは、S3 用の boto3 クライアントと、SNS 用のクライアントを初期化するのを手伝います。
S3 クライアントでは S3 のバケット一覧を取得します。 SNS クライアントでは公開先となるトピックの一覧を取得します(SNS のトピックについては第3章で学びます)。
この演習はコースの一部です
Python で始める AWS Boto 入門
演習の手順
- S3 と SNS にアクセスするための
boto3クライアントを作成します。 - どちらのクライアントも
region_nameは'us-east-1'を指定します。 - 認証情報には
AWS_KEY_IDとAWS_SECRETを使用します。 - SNS のトピックを一覧表示し、出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Generate the boto3 client for interacting with S3 and SNS
s3 = boto3.____('____', region_name=____,
aws_access_key_id=____,
____=____)
sns = boto3.____('____', region_name=____,
aws_access_key_id=____,
____=____)
# List S3 buckets and SNS topics
buckets = s3.list_buckets()
topics = sns.list_topics()
# Print out the list of SNS topics
print(topics)