python - python3:文本文件到电子邮件正文
问题描述
我有一个 output.txt,我想将其内容作为电子邮件正文发送。
1.我想从内容中删除特定的行(而不是从文件本身中删除)
2.我希望能够将其转换为 html 并设计一些特定的线条大小甚至颜色。
我有一个发送邮件的工作脚本。有一些问题:
使用 file.read() 时,我无法删除特定行。尝试 readlines() 时,类型为列表,并且电子邮件正文变得混乱。(加入不适用于字节类型的列表)
import smtplib
import email.message
def send_email(subject, msg):
try:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.ehlo()
ID = 'XXXX'
PASSWORD = 'XXXXXXX'
email_reciever = 'XXXXXX'
server.login(ID, PASSWORD)
message = 'Subject:{} \n\n {}'.format(subject, msg)
server.sendmail(ID, email_reciever, message)
print('Succes')
except Exception as e:
# Print any error messages to stdout
print(e)
finally:
server.quit()
filename = r".\Reports\Report.txt"
with open(filename, "rb") as filename:
text = filename.read()
msg = email.message.Message()
msg.add_header('Content-Type', 'text/plain')
msg.set_payload(text)
subject = "Report"
send_email(subject, msg)
解决方案
推荐阅读
- c# - 在笔记本/客户端上进行 Windows 10 更新后,我的(软件)服务会不断被删除
- node.js - 如何在没有公共访问权限的情况下访问 AWS s3 文件?
- php - Laravel 资源控制器中的 Update() 函数不起作用
- tensorflow - 什么是 tensorflow.matmul?
- ios - 在AppStore发布项目(swift 4.2)时,链接libPrinterSDK library.a时出错
- javascript - 如何定义机器学习工作流程?
- css - 如何在 svg 的样式部分中为所有 textPath 元素应用 startOffset?
- jenkins - Jenkins:在企业 github 中修改特定文件时,是否有一种简单的方法来触发 jenkins 作业?
- sql - 如何使用分隔符将行合并为一行
- android - 如何在 android 中使用 ffmpeg 转换 1:1 和 9:16 格式的视频?