in src/lambda/extract_text_from_textract_async_job_output.py [0:0]
def handler(event, context):
message = json.loads(event['Records'][0]['Sns']['Message'])
jobId = message['JobId']
print("JobId="+jobId)
output_bucket = os.environ["OUT_PUT_S3_BUCKET"]
status = message['Status']
print("Status="+status)
if status != "SUCCEEDED":
return {
# TODO : handle error with Dead letter queue (not in this workshop)
# https://docs.aws.amazon.com/lambda/latest/dg/dlq.html
"status": status
}
text_extractor = TextExtractor()
pages = text_extractor.extract_text(jobId)
file=jobId
content=pages[1]['Content']
f = open("/tmp/file.txt", "w")
f.write(content)
f.close()
s3_response = s3.upload_file("/tmp/file.txt",output_bucket,file+".txt")
print(list(pages.values()))