用Python在正文内通过电子邮件发送图像

用Python在正文内通过电子邮件发送图像,python,django,email,Python,Django,Email,如何用Python在电子邮件正文中发送图像。我在谷歌上搜索了一下,但找到了附件方法。我如何在线发送它 这是我的密码:- from django.core.mail import EmailMessage subject = 'Report for ' + filename content = 'Hello All \nPFA ' + filename + '. \n\n\nThis is an auto generated mail. Please do not reply

如何用Python在电子邮件正文中发送图像。我在谷歌上搜索了一下,但找到了附件方法。我如何在线发送它

这是我的密码:-

from django.core.mail import EmailMessage

    subject = 'Report for ' + filename
    content = 'Hello All \nPFA  ' + filename + '. \n\n\nThis is an auto generated mail. Please do not reply to this email. '
    receipients =['x','y']
    sender = ''

    message = EmailMessage(subject,content,sender,bcc = receipients)
    message.attach_file(filepath)
    message.send()

我不认为直接设置文本内容就可以做到这一点。最简单的方法可能是使用django模板呈现系统发送带有html的邮件。这样,您就可以按照您想要的方式直接包含图像(例如

请注意,如果收件人邮件系统无法读取html(几乎从未发生过),那么最好也包含纯文本邮件(没有图像)。更清楚地说,
template.html
template.txt
是您想要发送的相同内容,但有或没有任何html。比如说

template.txt
template.html
大家好

PFA
。。。
我会使用
base64
并在电子邮件正文中内嵌数据,例如:

<img width="16" height="16" alt="star" src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" />


给出:

什么是template.txt?template.html是保存在服务器上的文件吗?是。我假设您熟悉django模板系统。如果没有,你可以开始或。我是但根据我的要求,我需要每小时发送一封邮件,所以为每个图像源创建一个新的模板文件是不可能的。还有其他方法吗?什么意思?您不必每次发送文件时都创建一个文件,该文件不会被删除,它只是与您的代码一起保留在django项目中。否直接包含没有附件的图像的唯一方法是通过html.Encoded图像内联使用(使用base64编码)
Hello All \nPFA  \n\n\nThis is an auto generated mail. Please do not reply to this email. 
<p> Hello All </p>PFA  </br> <img src=" {{ image_src }} "> ... 
<img width="16" height="16" alt="star" src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" />