Python邮件程序脚本
我对一个非常简单的python电子邮件脚本有一个奇怪的问题。脚本本身工作正常,但是当我在现有代码中使用脚本时(在if语句中),它似乎将FROM、to、SUBJECT和文本字段放在电子邮件正文中(而不仅仅是文本字段) 剧本Python邮件程序脚本,python,mailer,Python,Mailer,我对一个非常简单的python电子邮件脚本有一个奇怪的问题。脚本本身工作正常,但是当我在现有代码中使用脚本时(在if语句中),它似乎将FROM、to、SUBJECT和文本字段放在电子邮件正文中(而不仅仅是文本字段) 剧本 import smtplib SERVER = "localhost" FROM = "test@test.com" TO = ["myemail@email.com"] # must be a list SUBJECT = "Test" TEXT = "This messag
import smtplib
SERVER = "localhost"
FROM = "test@test.com"
TO = ["myemail@email.com"] # must be a list
SUBJECT = "Test"
TEXT = "This message was sent with Python's smtplib."
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO, message)
server.quit()
当我把它包装在If语句中时,它会失控,将所有内容都放入电子邮件正文中
if X == 1:
import smtplib
SERVER = "localhost"
FROM = "test@test.com"
TO = ["myemail@email.com"] # must be a list
SUBJECT = "Test"
TEXT = "This message was sent with Python's smtplib."
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO, message)
server.quit()
else:
continue
这将给我一个电子邮件如下
From - test@test.com
Subject -
To - undisclosed-recipients
From: test@test.com
To: myemail@email.com
Subject: Hello!
This message was sent with Python's smtplib.
如前所述,如果我从If语句中删除代码,它将很好地完成,并具有正确的主题行和正确的正文。也许我遗漏了一些明显的东西
任何帮助都将不胜感激。谢谢我的朋友们
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
此消息的关键字From
、To
、Subject
等前面有空格。因此这些关键字不能识别为。因此,这一切都成为消息体的一部分
要解决此问题,请删除以下文本:
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
或者,为了保持缩进的可读性
import textwrap
if X == 1:
message = textwrap.dedent("""\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT))
此消息的关键字From
、To
、Subject
等前面有空格。因此这些关键字不能识别为。因此,这一切都成为消息体的一部分
要解决此问题,请删除以下文本:
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
或者,为了保持缩进的可读性
import textwrap
if X == 1:
message = textwrap.dedent("""\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT))
查看用于创建具有各种内容类型的电子邮件的电子邮件模块:(请参见此处的我的答案:)查看用于创建具有各种内容类型的电子邮件的电子邮件模块:(请参见此处的我的答案:)然后,就是了。我知道事情很简单,dam也在网上到处找。Unutbu,谢谢你的帮助,砰的一声,就在这里。我知道事情很简单,dam也在网上到处找。Unutbu,谢谢你的帮助=)