首页 > 解决方案 > 如何使用 python boto3 将文本文件内容作为邮件正文发送?

问题描述

我在文本文件中有以下数据

--------------2018 年 6 月 7 日星期四 12:00:01 UTC -------------- ---------------

"Ec2InstanceId":"i-0ec314eafd40e5ad5"

"Ec2InstanceId":"i-0200e84d07ff2c5ed"

"Ec2InstanceId":"i-00a46fde81549e56b"

"Ec2InstanceId":"i-02013e0f353f9aa79"

"Ec2InstanceId":"i-0f5c65a35ef4a7a39"

"Ec2InstanceId":"i-0bddc318b2a5d886b"

"Ec2InstanceId":"i-0e661050aadb9966c"

我想使用 python boto 3 模块通过邮件发送这些数据。现在我可以发送邮件了,但我面临的问题是邮件正文中的布局正在发生变化。一切都在一条线上。以下是我的代码片段的一些部分:

import boto3
from botocore.exceptions import ClientError

def read_file():
    content = []
    with open('test_instance_details.txt') as f:
        for i in f.readlines():
            content.append(i.strip('\n'))
    return '\n'.join(content)

BODY_HTML = read_file()

CHARSET = "UTF-8"

client = boto3.client('ses',region_name=AWS_REGION)


try:

    response = client.send_email(
        Destination={
            'ToAddresses': [
                RECIPIENT,
            ],
        },
    Message={
        'Body': {
            'Html': {
                'Charset': CHARSET,
                'Data': BODY_HTML,
            },

        },
        'Subject': {
            'Charset': CHARSET,
            'Data': SUBJECT,
        },
    },
    Source=SENDER,
)

我是python的新手。谁能帮我找出解决这个问题的方法?提前致谢..

标签: pythonboto3

解决方案


我已经解决了这个问题。以下是我在代码中所做的更改:

def read_file():
    contents=open('test_instance_details.txt','r')
    return '<br/>'.join(contents.readlines())

推荐阅读