Python创建自己的邮箱应用(1)

本文介绍如何在Python中利用smtplib模块发送纯文本和HTML格式的电子邮件,包括基本步骤和示例代码。
摘要由CSDN通过智能技术生成

在python中使用smtplib进行电子邮件的发送.

发送纯文本邮件

# -*- coding: UTF-8 -*-

import smtplib
from email.mime.text import MIMEText
from email.header import Header


class sendEmailController:

    def __init__(self, mail_host, mail_user, mail_pass):
        self.mail_host = mail_host
        self.mail_user = mail_user
        self.mail_pass = mail_pass


    def senTextEmail(self, title, sender, receivers, content):
        # 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码
        meesage = MIMEText(content, 'plain', 'utf-8')

        froms =  u'%s <%s>' % (sender, self.mail_user)
        meesage['From'] = froms
        meesage[<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,你可以使用第三方库如`smtplib`和`email`模块来发送电子邮件,包括使用QQ邮箱。QQ邮箱通常会要求使用SMTP(简单邮件传输协议)服务,但需要先设置授权码而非传统密码。 以下是基本步骤: 1. 安装所需库(如果尚未安装): ```bash pip install smtplib email ``` 2. 导入必要的库并创建邮件对象: ```python import smtplib from email.mime.text import MIMEText from email.header import Header # 邮件配置信息 smtp_server = "smtp.qq.com" # QQ SMTP服务器地址 smtp_port = 465 # 常用端口为465或587(加密) sender_email = "your_qq_email@qq.com" # 发送者的QQ邮箱账号 sender_password = "your_authorization_code" # 授权码(不是密码) receiver_email = "recipient_email@example.com" # 收件人邮箱 message = MIMEText("这是测试邮件的内容", 'plain', 'utf-8') message['From'] = Header(sender_email) message['To'] = Header(receiver_email) subject = "Python邮件测试" message['Subject'] = Header(subject) # 构建邮件数据 msg = message.as_string() ``` 3. 连接并发送邮件: ```python try: with smtplib.SMTP_SSL(smtp_server, smtp_port) as server: server.login(sender_email, sender_password) server.sendmail(sender_email, receiver_email, msg) print(f"邮件已成功发送至 {receiver_email}") except Exception as e: print(f"发送邮件失败:{e}") finally: server.quit() # 关闭连接 ``` 注意:为了安全起见,请确保在实际应用中妥善处理你的授权码,并在不使用时清除它们。此外,QQ邮箱可能对非授权客户端有所限制,所以可能需要开启“QQ邮箱SMTP服务”并检查其设置是否允许从非默认客户端发送邮件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值