Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我在用Python发送电子邮件时收到AttributeError_Python_Email - Fatal编程技术网

我在用Python发送电子邮件时收到AttributeError

我在用Python发送电子邮件时收到AttributeError,python,email,Python,Email,我正在尝试用Python发送电子邮件。但是我有一个错误。 这是我的代码: import smtplib def sendmail(subject, body): smtp = smtplib.SMTP("smtp.gmail.com", 587) smtp.ehlo() smtp.starttls() smtp.login("....@gmail.com", PASSWORD) message_body = f"Subject:{subject}\n\

我正在尝试用Python发送电子邮件。但是我有一个错误。 这是我的代码:

import smtplib


def sendmail(subject, body):
    smtp = smtplib.SMTP("smtp.gmail.com", 587)
    smtp.ehlo()
    smtp.starttls()
    smtp.login("....@gmail.com", PASSWORD)
    message_body = f"Subject:{subject}\n\n{body}"
    smtp.sendmail("...@gmail.com", "....@gmail.com", message_body)
    smtp.quit()

sendmail("test subject", "test body")
但是,我发现以下错误: AttributeError:“int”对象没有属性“encode”

请尝试以下操作:

smtp.sendmail(sender, recipient, message_body.as_string())

msg
可以是包含ASCII范围内字符的字符串,也可以是字节字符串。使用ascii编解码器将字符串编码为字节,\r\n单个字符和\r\n个字符转换为\r\n个字符。不修改字节字符串

  smtp.sendmail(sender, recipient, str(message_body))

我仍然收到相同的bug.AttributeError回溯(最近一次调用last)在10 smtp.quit()11--->12 sendmail(“测试主题”、“测试主体”)中可能您的方法名称冲突。已在smtplib中定义sendmail方法。尝试更改方法名。我不明白脚本名是什么意思,我是指文件名。这是偶然的吗,email.py?成功了!在打开不太安全的应用程序并将我的密码放入字符串后。非常感谢吉格纳提乌斯