Python错误:'tuple'对象没有属性'encode'

时间:2012-12-03 21:08:42

标签: python email smtplib

我正在做的是从网页获取信息并尝试将其放入电子邮件中,格式如下: 名字:第一个\ n#first是变量 姓氏:last #last是一个变量

以下是我的代码:

import smtplib
import base64

from email.MIMEMultipart import MIMEMultipart
from email.mime.text import MIMEText

msg = MIMEMultipart('relative')
msg['Subject'] = 'Confirmation E-Mail'
msg['From'] = "none"
msg['To'] = email
text1 = "First Name: ", first_name, "<br>Last Name: ", last_name
part1 = MIMEText(text1, 'html')

s = smtplib.SMTP('localhost')
s.sendmail(email, email, msg.as_string())
s.quit()
从网页中提取

first_name和last_name!

2 个答案:

答案 0 :(得分:3)

MIMEText将字符串作为其第一个参数。您正在将text1创建为元组。你需要更像

的东西
"First Name: %s\nLast Name: %s" % (first_name, last_name)  

答案 1 :(得分:1)

你需要将part1附加到msg:

msg.attach(part1)

您还可以找到如何在Python Documenation

中发送多部分电子邮件的好例子