S3のファイル数を監視するpythonプログラム - Lambda
S3のファイル数を監視するpythonプログラムはどのように書けばよろしいでしょうか
Amazon S3には、「boto3」というPython用のSDKがあります。
これを使用すれば、PythonプログラムからS3バケット内のオブジェクトの数を取得することができます。
以下は、S3バケット内のオブジェクト数を取得するサンプルコードです。
import boto3 # S3クライアントを作成 s3 = boto3.client('s3') # バケット名を指定 bucket_name = 'my-bucket' # バケット内のオブジェクト数を取得 result = s3.list_objects(Bucket=bucket_name) object_count = result['Contents'].len() print(object_count)
上記のサンプルコードは、S3バケット「my-bucket」にあるオブジェクトの数を取得し、「object_count」に格納します。
これを定期的に実行することで、S3バケット内のオブジェクト数を監視することができます。
import boto3 # S3のクライアントを作成 s3 = boto3.client('s3') # バケット名を指定 bucket_name = 'your_bucket_name' # ファイル数を取得 response = s3.list_objects(Bucket=bucket_name) file_count = response['Contents'].length print('S3の{}バケットには{}個のファイルがあります。'.format(bucket_name, file_count))
上記のプログラムでは、boto3ライブラリを使用してS3のクライアントを作成し、指定したバケット内のファイル数を取得して表示しています。
※注意点として、上記のプログラムを実行するためには、事前にAWSの認証情報(アクセスキー、シークレットキー)を取得し、環境変数に設定しておく必要があります。