63

新しいテキスト ファイルが s3 バケットにアップロードされるたびにトリガーされる、AWS 用のラムダ関数をセットアップできるかどうか疑問に思っていました。関数内で、テキストファイルの中身を取得して何とか加工したい。これって可能なのかな…?と思いました。

たとえば、内容が foobarbaz の foo.txt をアップロードした場合、何らかの方法でラムダ関数で foobarbaz を取得したいと考えています。getObject または同様のメソッドからメタデータを取得できることはわかっています。

ありがとう!

4

3 に答える 3

14

Python 3.6 環境でラムダ関数を使用しています。以下のコードは、バケット my_s3_bucket 内のファイル main.txt の内容を読み取ります。必要に応じて、バケットの名前とファイル名を必ず置き換えてください。

def lambda_handler(event, context):
    # TODO implement
    import boto3

    s3 = boto3.client('s3')
    data = s3.get_object(Bucket='my_s3_bucket', Key='main.txt')
    contents = data['Body'].read()
    print(contents)
于 2018-07-27T13:25:54.303 に答える