我有这个python发送html邮件,在这个代码中,我可以发送电子邮件,但是消息的正文是空的。你知道吗
下面是我的代码#!/usr/bin/python
import smtplib
import MySQLdb
import time
import os
from datetime import datetime
def timestamp():
now = datetime.now()
return now.strftime("%Y-%m-%d %H:%M:%S")
def write_log(log):
date_today = datetime.now().strftime("%Y-%m-%d")
if os.path.isfile('logs/log.'+date_today+'.txt') == True:
wlog = open('logs/log.'+date_today+'.txt','a')
wlog.writelines('\n'+timestamp()+' - '+log)
else:
wlog = open('logs/log.'+date_today+'.txt','w')
wlog.writelines(timestamp()+' - '+log)
def login():
now = time.strftime("%c")
username = "email@email.com"
pwd = 'password'
smtpserver = smtplib.SMTP("email@email.com",587)
smtpserver.login(username, pwd)
db_ip = 'localhost'
db_user = 'USER'
db_pass = 'DBPASSWORD'
db_dbase = 'DBASE'
while 1:
db = MySQLdb.connect(db_ip,db_user,db_pass,db_dbase)
cur = db.cursor()
cur.execute("SELECT * FROM form_number WHERE tag = 2")
data = cur.fetchall()
for row in data:
recipient = row[6]
sender = 'NO REPLY EMAIL'
assigned_person = row[5]
header = 'Date: ' + now + '\n' + 'To:' + recipient + '\n' + 'From: ' +sender + '\n' + 'Subject:Liquidation record of ' + assigned_person + '\n'
msg = """Content-type: text/html
Subject: liquidation for """+ row[5] +"""
""" + row[5] + """ has sent you a request.
to view click on the link below.
"""
message = header + msg
print message
smtpserver.sendmail(sender, recipient, message)
cur.execute("UPDATE form_number SET tag = 3, time_sent = '" + now + "' WHERE form_number = '" + str(row[0]) + "'")
db.commit()
db.close()
time.sleep(15)
def run():
try:
login()
except:
pass
run()
#login()
我可以成功地发送电子邮件给我想要的收件人,但当收件人收到电子邮件时,它只有一个空白的mesage。任何评论都可以。提前谢谢!你知道吗