Python奇怪的发送电子邮件行为
我有可以正确发送电子邮件的基本脚本:Python奇怪的发送电子邮件行为,python,Python,我有可以正确发送电子邮件的基本脚本: #!/usr/bin/python import smtplib sender = 'demo@mail.com' receivers = ['demo2@mail.com'] message = """From:Email cronjob <demo@mail.com> Subject: Anything Some more text """ message = message + "\nso far so goo
#!/usr/bin/python
import smtplib
sender = 'demo@mail.com'
receivers = ['demo2@mail.com']
message = """From:Email cronjob <demo@mail.com> Subject:
Anything
Some more text """
message = message + "\nso far so good"
try:
smtpObj = smtplib.SMTP('localhost')
smtpObj.sendmail(sender, receivers,message)
print "Successfully sent email"
except SMTPException:
print "Error: unable to send email"
#/usr/bin/python
导入smtplib
发送者demo@mail.com'
接收者=['demo2@mail.com']
message=“”发件人:电子邮件收件人:
任何东西
还有一些文字吗
message=message+“\n到目前为止还不错”
尝试:
smtpObj=smtplib.SMTP('localhost')
smtpObj.sendmail(发送者、接收者、消息)
打印“已成功发送电子邮件”
除SMTPException外:
打印“错误:无法发送电子邮件”
通过上面的代码片段,电子邮件已正确发送,但是如果我将相同的脚本作为如下所示的方法:
#!/usr/bin/python
import smtplib
def sendMail(text):
sender = 'demo@mail.com'
receivers = ['demo2@mail.com']
message = """From: Email cronjob <demo@mail.com>
Subject: Anything
Initial text """
message = message + text
try:
smtpObj = smtplib.SMTP('localhost')
smtpObj.sendmail(sender, receivers, message)
print "Successfully sent email"
except SMTPException:
print "Error: unable to send email"
sendMail("\nlet's try it")
#/usr/bin/python
导入smtplib
def sendMail(文本):
发送者demo@mail.com'
接收者=['demo2@mail.com']
message=“”发件人:电子邮件cronjob
主题:任何事
初始文本“”
消息=消息+文本
尝试:
smtpObj=smtplib.SMTP('localhost')
smtpObj.sendmail(发送者、接收者、消息)
打印“已成功发送电子邮件”
除SMTPException外:
打印“错误:无法发送电子邮件”
sendMail(“\n让我们试试看”)
电子邮件已发送,但发件人地址、电子邮件标题和收件人地址在收到的电子邮件中不再可见,仅显示正文
我怎样才能解决这个问题?感谢使用advanced。正确缩进您的代码,并确保电子邮件标题(如From和Subject)位于各自的行中,至少用换行符(\n)分隔,然后是电子邮件正文。这两个示例中的行为应该一致。正确缩进代码,并确保电子邮件标题(如From和Subject)位于各自的行中,至少用换行符(\n)分隔,然后是电子邮件正文。在这两个示例中,您应该有一致的行为。结果如下: message=“”发件人:%s\nTo:%s\n对象:我的主题\a标题\n\n%s”“”%(发件人、收件人、结果) 谢谢。这就解决了: message=“”发件人:%s\nTo:%s\n对象:我的主题\a标题\n\n%s”“”%(发件人、收件人、结果)
谢谢。如果Senthil Kumaran的回答帮助您解决了问题,您应该接受他的回答。此外,这种回答最好是作为对答案的评论,而不是作为自己的答案。如果Senthil Kumaran的答案帮助你解决了问题,你应该接受他的答案。而且,这种回答最好是作为对答案的评论,而不是作为自己的答案。