import smtplib from email.mime.text import MIMEText from email.header import Header import logging from logging.handlers import TimedRotatingFileHandler # 创建一个选品logger detail_logger = logging.getLogger('detailLogger') detail_logger.setLevel(logging.DEBUG) # 设置日志级别 # 创建一个handler,用于写入文件,并根据时间自动轮换日志文件 detail_handler = TimedRotatingFileHandler('log/详细日志.log', when='midnight', interval=1, backupCount=30,encoding='utf-8') detail_handler.setFormatter(logging.Formatter('%(asctime)s - %(message)s')) # 添加handler到logger detail_logger.addHandler(detail_handler) # 发件人邮箱账号 sender = 'wuzilongad163@163.com' # 收件人邮箱账号,可以是多个 receivers = 'cnpcpptfcshhtg16@126.com' # 邮件正文内容 message = MIMEText('这是邮件的正文内容', 'plain', 'utf-8') j1 = 0 while j1 < 20: j1 += 1 message = MIMEText('这是邮件的正文内容', 'plain', 'utf-8') # 邮件主题 message['Subject'] = Header(f'邮件主题163-{j1}', 'utf-8') # 发件人和收件人 message['From'] = "wuzilongad163@163.com" message['To'] = "cnpcpptfcshhtg16@126.com" try: # 连接到SMTP服务器,使用SSL连接(端口465)或TLS连接(端口587) smtpObj = smtplib.SMTP_SSL("smtp.163.com", 465) # 使用SSL连接示例 # smtpObj = smtplib.SMTP("smtp.126.com", 587) # 使用TLS连接示例,需要先调用smtpObj.starttls() # smtpObj.starttls() # 如果使用TLS连接,取消注释这行并注释上一行中的SSL连接部分 # 登录SMTP服务器 smtpObj.login(sender, "PAquhUxh7VR6Qe9j") # 注意:出于安全考虑,建议使用应用专用密码而非你的邮箱密码 # 发送邮件 smtpObj.sendmail(sender, receivers, message.as_string()) detail_logger.info(f"邮件发送成功-{j1}") except smtplib.SMTPException as e: print("Error: 无法发送邮件", e) finally: smtpObj.quit()