modified | Thursday 1 May 2025 |
---|
Python 中 怎 样 发 邮 件
科 创 世 界
2023 年 5 月 29 日
责 编 ; 高 大 力 “ 设 计 : 向 海 蓉 “ 校 对 : 杨 志 刚
Python 中 忘 样 发 邮 件
国 陈 新 龙
电 子 邮 件 是 如 何 进 行 芸 互 传 输 的 ?
什 么 是 电 子 邮 件 协 议 ?
电 子 邮 件 协 议 中 最 常 用 的 是 SMTP
和 IMAP 两 种 协 议 。SMTP 一 般 用 于 发 送
邮 件 , 是 建 立 在 FTP 文 件 传 输 服 务 上 的
一 种 邮 件 服 务 , 主 要 用 于 从 源 地 址 到 目
的 地 址 传 输 邮 件 的 规 范 ,SMTP 的 重 要
特 性 之 一 是 其 能 跨 越 网 络 传 输 邮 件 ,
即 “SMTP 邮 件 中 继 “。 在 起 草 电 子 邮 件
并 发 起 发 送 命 令 或 者 中 转 邮 件 的 时 候 ,
本 书 试 读 权 益 还 剩 47.52% | 购 买 此 书 “> 791/292
0
Python 中 怪 杵 友 邸 件
就 会 使 用 此 协 议 。
IMAP“(Imternet 邮 件 访 问 协 议 ) 一
般 用 来 收 取 邮 件 , 是 一 个 应 用 层 的 协
议 , 是 一 种 临 时 邮 件 访 问 协 议 , 也 被 称
为 芸 互 式 邮 件 访 问 协 议 。IMAP 不 会 用
于 发 送 邮 件 , 主 要 用 于 管 理 邮 件 以 及 从
服 务 器 上 检 索 电 子 邮 件 , 获 取 邮 件 的 信
息 。IMAP 协 议 运 行 在 TCP/IP 协 议 之
上 , 它 与 POP3 协 议 的 主 要 区 别 是 用 户
可 以 不 用 把 所 有 的 邮 件 全 部 下 载 , 可 以
通 过 客 户 端 直 接 对 服 务 器 上 的 邮 件 进 行
操 作 ( 图 1) 。,
gsssoiei 【 a
SMTP 协 议 凸 SMTP 协 议
7 一 |
心 命玲 ReceiveServe
SMTP Server s
蒯TP协议1T 且 IMAP/POP3 协 议
L all
6 s
发 送 者 接 收 者
c 0
我 们 采 用 编 程 的 方 式 来 更 好 理 解 邮
本 书 试 读 权 益 还 剩 45.03% | 购 买 此 书 “> 801292
0
Python 中 怎 样 发 邮 件
仵 发 迪 和 接 收 的 过 程 。
编 程 前 的 工 作 , 在 邮 箱 后 台 开 启
IMAP/SMTP 和 POP3/SMTP 服 务 , 找 到
用 于 连 接 到 服 务 器 的 授 权 码 。 用 授 权 码
代 替 邮 箱 密 码 登 录 客 户 端 , 即 使 邮 箱 密
码 丢 失 , 邮 件 也 不 会 通 过 客 户 端 泄 露 。
以 网 易 邮 箱 为 例 , 进 入 邮 箱 设 置 ,
进 入 POP3/SMTP/IMAP 设 置 , 开 启 IM-
AP/SMTP 和 POP3/SMTP 服 务 , 新 增 授
权 密 码 , 记 下 授 权 码 。
开 始 编 程 , 导 入 stmplib 和 email 模
块 。Python 标 准 库 的 smtplib 模 块 , 用 于
实 现 按 SMTP 协 议 发 送 邮 件 。email 模 块
用 于 按 邮 件 格 式 构 造 内 容 。 定 义 变 量 ,
如 网 易 邮 箱 SMTP 服 务 器 地 址 :
smtp.163.com,QQ 邮 箱 SMTP 服 务 器 地
址 : smtp.qq.com ( 图 2) 。
本 书 试 读 权 益 还 剩 41.32% | 购 买 此 书 “> 801292
0
Python 中 怎 样 发 邮 件
一 一
E 东 s5 a 6
[
目 import smtpuib s
2 作 oa smaituaine.text import MMEText
【
国 i 江
5 pert z 65
4 sernese “ 耿 6Lt5.coar
7 passord - 一
8 a = NNEText ( 余 python 或 浩 1 ptain vtf-8
f
, 题
E satpobj = satpHb.SMTP-SSL(host)
达 tp0bj.logintusernase,passmeond
屹 antp0bj.sendsait(rehsionis t aglti.cosro e ylt5.coa ssgses_string[0)
吴 antpobj.anit0
45 print ( 佳 水
t
27 L print ( 佳 串
5 e
回 6eeeoe eoe
目 < s 英
p p |
F E
【 - 二 : 伟
拱 跋 发 送 端 口 号 , 使 用 SSL 协 议
( 安 全 套 接 字 协 议 ) 情 况 下 端 口 号
465。 还 需 我 们 自 己 的 邮 箱 账 号 和 授 权
码 , 确 保 我 们 可 以 通 过 该 邮 箱 账 号 发 送
邮 件 , 注 意 授 权 码 不 是 密 码 , 是 在 网 站
上 申 请 的 一 串 密 钥 。
发 送 邮 件 时 会 创 建 一 个 SMTP 对
象 ,SMTP 协 议 是 由 源 服 务 器 到 目 的 地
服 务 器 传 送 邮 件 的 一 组 规 则 。 我 们 需 要
通 过 SMTP 指 定 一 个 服 务 器 , 这 样 才 能
把 邮 件 送 到 另 一 个 服 务 器 。 然 后 通 过
SMTP_SSL 方 法 连 接 上 指 定 的 服 务 器 ,
login 登 录 邮 箱 (username 和 password 分
本 书 试 读 权 益 还 剩 38.65% | 购 买 此 书 811/292
Python 中 怎 样 发 邮 件
列 代 表 邮 箱 账 号 和 申 请 的 授 权 码 ) , 最
后 通 过 sendmail 方 法 指 定 发 件 人 、 收 件
人 、 发 送 的 邮 件 内 容 。as string(0) 是 将 发
送 的 信 息 msg 转 化 为 字 符 串 类 型 。 若 邮
件 发 送 成 功 后 对 应 的 收 件 邮 箱 中 会 出 现
邮 件 的 信 息 即 可 查 看 。
这 只 是 最 基 础 的 文 本 信 息 邮 件 , 接
下 来 你 可 以 查 阅 相 关 资 料 , 看 看 怎 样 发
送 携 带 附 件 的 邮 件 。
一
I0| 日
= l E
本 书 试 读 权 益 还 剩 36.83%6 | 购 买 此 书 > 82/292
e