Python自动发邮件,将列表中数值填写到邮件正文表格中代码
时间: 2023-06-03 16:05:02 浏览: 127
python邮件接收发送【完整脚本】
5星 · 资源好评率100%
以下是 Python 自动发邮件、并将列表中数值填写到邮件正文表格中的代码示例:
```
import smtplib
from email.mime.text import MIMEText
# 发送邮件函数
def send_email(to_addr, subject, content):
from_addr = "your_email@example.com"
password = "your_email_password"
msg = MIMEText(content, 'html', 'utf-8') # 邮件正文 HTML 格式
msg['From'] = from_addr
msg['To'] = to_addr
msg['Subject'] = subject
smtp_server = "smtp.example.com" # 邮箱 SMTP 服务器地址
smtp_port = 587 # 邮箱 SMTP 服务器端口
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
server.login(from_addr, password)
server.sendmail(from_addr, to_addr, msg.as_string())
server.quit()
# 填写邮件正文表格的函数
def format_table_html(data):
table_html = "<table border='1'>"
for row in data:
table_html += "<tr>"
for col in row:
table_html += "<td>{}</td>".format(col)
table_html += "</tr>"
table_html += "</table>"
return table_html
if __name__ == "__main__":
recipients = ["recipient1@example.com", "recipient2@example.com"] # 邮件接收者列表
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] # 要填写邮件正文表格的数据列表
table_html = format_table_html(data) # 生成格式化后的表格 HTML
content = "请查看以下表格:" + table_html # 拼接完整邮件正文内容
subject = "Python 自动发邮件测试" # 邮件主题
for recipient in recipients:
send_email(recipient, subject, content) # 发送邮件给每个接收者
```
以上代码使用的是 smtplib 和 email.mime.text 模块,需要先安装相关依赖库。每次运行程序都会自动发送邮件给指定的接收者列表,邮件正文中包含一个表格,数据来源于事先定义好的 data 列表。
阅读全文