使用python的smtplib库出现连接超时问题
问题概述
我想用python的smtplib库来发送邮件,但是出现了超时问题
代码
# smtplib 用于邮件的发信动作
import smtplib
# email 用于构建邮件内容
from email.mime.text import MIMEText
# 构建邮件头
from email.header import Header
from email.message import EmailMessage
import ssl
from loguru import logger
class EmailSend():
def __init__(self,sender,receiver,auth_key):
self.sender = sender
self.receiver = receiver
self.auth_key = auth_key
def send(self,content):
# 端口号:465 or 587
port = 465
host = "smtp.qq.com"
# 正文
msg = MIMEText(content, 'plain','utf-8')
# 邮件主题
msg['Subject'] = "通知" # 邮件主题
msg['From'] = self.sender
msg['To'] = self.receiver
logger.info("开始发送邮件...")
smtp = smtplib.SMTP() # 建立和SMTP邮件服务器的连接
smtp.connect(host,port)
logger.info("连接服务器完成")
smtp.login(self.sender, self.auth_key)
logger.info("登录成功")
smtp.sendmail(self.sender,self.receiver,msg.as_string())
smtp.quit()
logger.info("邮件发送完成!")
if __name__ == '__main__':
# 邮箱授权码
auth_key = "my_key"
# 发生者的邮箱
sender_email = "1234@qq.com"
# 接收者的邮箱
receiver_email = ["12345@qq.com"]
email_s = EmailSend(sender_email, receiver_email, auth_key)
# 不知道为什么,无法连接上服务器
email_s.send("这是一个测试")
错误
TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。