通过Zoho从Python发送电子邮件
我试图从Zoho那里发送一封电子邮件,但是:有时我会收到电子邮件,有时不会,其他人也会收到 但是在通过Zoho从Python发送电子邮件,python,imap,zoho,Python,Imap,Zoho,我试图从Zoho那里发送一封电子邮件,但是:有时我会收到电子邮件,有时不会,其他人也会收到 但是在mail.zoho.com中,所有电子邮件都存在于已发送的电子邮件中,但人们有时没有收到,这不是垃圾邮件问题 def sendMailTo(subject='', msgHTML='', to='', no_reply=False, mail_type=None): try: j = json.loads(msgHTML) msgHTML = ""
mail.zoho.com
中,所有电子邮件都存在于已发送的电子邮件中,但人们有时没有收到,这不是垃圾邮件问题
def sendMailTo(subject='', msgHTML='', to='', no_reply=False, mail_type=None):
try:
j = json.loads(msgHTML)
msgHTML = ""
for k in j.keys():
msgHTML += str(k) + ": " + str(j[k])
msgHTML += "\n"
except ValueError:
pass
#Create the root message and fill in the from, to, and subject headers
msg = MIMEMultipart('related')
msg2 = MIMEText(msgHTML, 'html', 'UTF-8') #Content-Type: text/html; charset="us-ascii"
msg.attach(msg2)
# This example assumes the image is in the current directory
import os
os.chdir(os.path.dirname(__file__))
#print(os.getcwd())
fp = open('./utils/images/logo.png', 'rb')
msgImage = MIMEImage(fp.read())
fp.close()
# Define the image's ID as referenced above
msgImage.add_header('Content-ID', '<logo>')
msg.attach(msgImage)
fp = open('./utils/images/facebook.png', 'rb')
msgImage = MIMEImage(fp.read())
fp.close()
# Define the image's ID as referenced above
msgImage.add_header('Content-ID', '<facebook>')
msg.attach(msgImage)
recipients = [to]
TO = ", ".join(recipients)
msg['Subject'] = subject
msg['To'] = TO
if no_reply:
FROM = "no-reply@xxxxx.com"
msg['From'] = FROM
# Send the message via our own SMTP server, but don't include the
# envelope header.
s = smtplib.SMTP_SSL('smtp.zoho.com', 465)
# s.set_debuglevel(1)
# s.starttls()
s.ehlo()
s.login(FROM, 'yoyoyoyoyoyo')
s.sendmail(FROM, recipients, msg.as_string())
s.quit()
else:
FROM = "xxxxxxxxx@gmail.com"
msg['From'] = FROM
# Send the message via our own SMTP server, but don't include the
# envelope header.
s = smtplib.SMTP('smtp.gmail.com', 587)
#s.set_debuglevel(1)
#s.ehlo()
s.starttls()
s.login(FROM, 'yoyoyoyoyoyo')
s.sendmail(FROM, recipients, msg.as_string())
s.quit()
def sendMailTo(subject='',msgHTML='',to='',no_reply=False,mail_type=None):
尝试:
j=json.loads(msgHTML)
msgHTML=“”
对于j.keys()中的k:
msgHTML+=str(k)+:“+str(j[k])
msgHTML+=“\n”
除值错误外:
通过
#创建根消息并填写发件人、收件人和主题标题
msg=MIMEMultipart('相关')
msg2=MIMEText(msgHTML,'html','UTF-8')#内容类型:text/html;charset=“us ascii”
msg.attach(msg2)
#本例假定映像位于当前目录中
导入操作系统
chdir(os.path.dirname(_文件__))
#打印(os.getcwd())
fp=open('./utils/images/logo.png',rb')
msgImage=MIMEImage(fp.read())
fp.close()
#如上所述定义图像的ID
msgImage.add_头('Content-ID','')
msg.attach(msgImage)
fp=open('./utils/images/facebook.png',rb')
msgImage=MIMEImage(fp.read())
fp.close()
#如上所述定义图像的ID
msgImage.add_头('Content-ID','')
msg.attach(msgImage)
收件人=[收件人]
TO=“,”。加入(收件人)
msg['Subject']=主语
msg['To']=To
如果没有,请答复:
FROM=“否-reply@xxxxx.com"
msg['From']=From
#通过我们自己的SMTP服务器发送邮件,但不包括
#信封头。
s=smtplib.SMTP_SSL('SMTP.zoho.com',465)
#s.set_调试级别(1)
#s.starttls()
s、 ehlo()
s、 登录(来自“Yoyo”)
s、 sendmail(发件人、收件人、消息作为字符串())
s、 退出
其他:
FROM=”xxxxxxxxx@gmail.com"
msg['From']=From
#通过我们自己的SMTP服务器发送邮件,但不包括
#信封头。
s=smtplib.SMTP('SMTP.gmail.com',587)
#s、 设置调试级别(1)
#s、 ehlo()
s、 starttls()
s、 登录(来自“Yoyo”)
s、 sendmail(发件人、收件人、消息作为字符串())
s、 退出
如果您已成功连接到服务器,并且可以在服务器端的“已发送邮件”文件夹中看到邮件,但收件人尚未收到邮件,您如何知道这些邮件没有被标记为垃圾邮件?你可以通过gmail发送邮件,这并不意味着zoho的邮件在zoho和收件人之间没有被标记为垃圾邮件。我认为问题在于我需要TLS证书。如果你成功连接到服务器,您可以在服务器端的“已发送邮件”文件夹中看到邮件,但收件人尚未收到邮件,您如何知道这些邮件没有被标记为垃圾邮件?事实上,你可以通过gmail发送邮件并不意味着zoho的邮件在zoho和收件人之间的某个地方没有被标记为垃圾邮件。我认为问题在于我需要TLS证书。