如何使用AWS Lambda Python读取AWS S3存储的word文档(.doc和.docx)文件内容?

时间:2019-01-30 07:33:52

标签: python amazon-web-services amazon-s3 aws-lambda

我的场景是,我尝试使用python从Aws Lambda实现读取的AWS Stored S3 word文档(.doc和.docx)文件内容。在我使用的代码下方,我的问题是我可以获取文件名,但无法读取内容。

def lambda_handler(event, context):

    file_contents = s3.Object(‘Bucketname’, 'sample.docx').get()['Body'].read().decode("unicode-escape")

    return {
         'File Name' : obj.key,
         ‘Content’ : file_contents
            }
  

响应:{“ errorMessage”:“'unicodeescape'编解码器无法解码   位置25818-25819中的字节:截断的\ xXX转义”,“ errorType”:   “ UnicodeDecodeError”,“ stackTrace”:[       [         “ /var/task/lambda_function.py”,         76,         “ lambda_handler”,         “ file_contents = s3.Object('Bucketname','sample.docx')。get()['Body']。read()。decode(\“ unicode-escape \”)“       ]]}

1 个答案:

答案 0 :(得分:0)

.docx和.doc文件是二进制文件,因此无法进行简单的解码,也许docx2txt 可能对您有帮助。