1. 首页
  2. 编程语言
  3. Python
  4. 邮件的发送和接收示例代码,针对QQ邮箱的使用示例

邮件的发送和接收示例代码,针对QQ邮箱的使用示例

上传者: 2023-06-28 21:29:21上传 RAR文件 1.82KB 热度 16次

以下代码仅供参考学习,请根据自己的需求进行相应修改和适配。在使用代码之前,请确保您已正确配置好SMTP和POP3/IMAP服务,并将代码中的邮箱地址、授权码等相关信息替换为您自己的。

发送邮件示例代码:

import smtplib
from email.mime.text import MIMEText

# 设置邮箱服务器地址和端口号
mail_host = "smtp.qq.com"
mail_port = 587

# 发件人邮箱地址和授权码
mail_user = "your_email@qq.com"
mail_pass = "your_app_password"

# 收件人邮箱地址
to_addr = "recipient_email@example.com"

# 构造邮件内容
content = "这是一封通过Python代码发送的测试邮件。"
msg = MIMEText(content, 'plain', 'utf-8')
msg['From'] = mail_user
msg['To'] = to_addr
msg['Subject'] = "测试邮件"

try:
    # 使用SMTP服务登录并发送邮件
    server = smtplib.SMTP(mail_host, mail_port)
    server.starttls()
    server.login(mail_user, mail_pass)
    server.sendmail(mail_user, to_addr, msg.as_string())
    server.quit()
    print("邮件发送成功")
except Exception as e:
    print("邮件发送失败:", str(e))

接收邮件示例代码:

import poplib

# 设置邮箱服务器地址和端口号
pop3_host = "pop.qq.com"
pop3_port = 995

# 邮箱账户和授权码
pop3_user = "your_email@qq.com"
pop3_pass = "your_pop3_password"

try:
    # 使用POP3_SSL服务登录邮箱
    server = poplib.POP3_SSL(pop3_host, pop3_port)
    server.user(pop3_user)
    server.pass_(pop3_pass)

    # 获取邮箱中的邮件数量
    mail_count = len(server.list()[1])
    print("您的邮箱中有", mail_count, "封邮件。")

    # 获取最新一封邮件
    response_list = server.retr(mail_count)
    raw_message_lines = response_list[1]
    raw_message = b'\r\n'.join(raw_message_lines).decode('utf-8')

    # 打印邮件内容
    print("最新一封邮件内容:")
    print(raw_message)

    server.quit()
except Exception as e:
    print("获取邮件失败:", str(e))
用户评论