""" Based on Lambda Runtime Python 3.9. Your terminology dictionary file should be named as: 1. For Chinese to English: terms--zh-en.csv 2. For English to Chinese: terms--en-zh.csv """ import json import boto3 def lambda_handler(event, context): print(event) bucket_name = event['Records'][0]['s3']['bucket']['name'] key_name = event['Records'][0]['s3']['object']['key'] if key_name.endswith('csv') and key_name.startswith('terms-'): s3 = boto3.client('s3') s3.download_file(bucket_name, key_name, '/tmp/'+key_name) terms_file = open('/tmp/'+key_name, "rb") data = terms_file.read() terms_file.close() translate_client = boto3.client('translate') t_data = { "Format":"CSV", "File":data, "Directionality":"UNI" } response = translate_client.import_terminology( Name=key_name.replace('.csv',''), MergeStrategy='OVERWRITE', TerminologyData=t_data ) print(response) else: return { 'statusCode': 404, 'body': json.dumps(event) } return { 'statusCode': 200, 'body': json.dumps(event) }