如果你曾设置了 Thunderbird、Outlook 或其他程序,连接到你的电子邮件账户,
你可能熟悉配置 SMTP 服务器和端口。这些设置因电子邮件提供商而不同,但在网上搜索“<你的提供商> SMTP 设置”,应该能找到相应的服务器和端口。
SMTP 服务器的域名通常是电子邮件提供商的域名,前面加上 SMTP。例如, Gmail 的 SMTP 服务器是 smtp.gmail.com。表 16-1 列出了一些常见的电子邮件提供商及其 
SMTP 服务器(端口是一个整数值,几乎总是 587,该端口由命令加密标准 TLS 使用)。

得到电子邮件提供商的域名和端口信息后,调用 smtplib.SMTP()创建一个 SMTP
对象,传入域名作为一个字符串参数,传入端口作为整数参数。SMTP 对象表示与 SMTP 邮件服务器的连接,它有一些发送电子邮件的方法。例如,下面的调用创建了一个 SMTP 对象,连接到Gmail:
>>>  smtpObj  =  smtplib.SMTP('smtp.gmail.com',  587)
>>>  type(smtpObj)
<class  'smtplib.SMTP'>
输入 type(smtpObj)表明,smtpObj 中保存了一个 SMTP 对象。你需要这个 SMTP对象,以便调用它的方法,登录并发送电子邮件。如果 smtplib.SMTP()调用不成功,你的 
SMTP  服务器可能不支持 TLS  端口 587。在这种情况下,你需要利用 smtplib.SMTP_SSL()和 465 端口,来创建SMTP 对象。
>>>  smtpObj  =  smtplib.SMTP_SSL('smtp.gmail.com',  465)

意       如果没有连接到因特网,Python 将抛出 socket.gaierror: [Errno 11004] getaddrinfo failed 或类似的异常。

对于你的程序,TLS 和 SSL 之间的区别并不重要。只需要知道你的 SMTP 服务器使用哪种加密标准,这样就知道如何连接它。在接下来的所有交互式环境示例中, smtpObj 
变量将包含smtplib.SMTP()或smtplib.SMTP_SSL()函数返回的SMTP 对象。

16.2.1 连接到 SMTP 服务器相关推荐

  1. linux网页无法连接到服务器,linux – 无法连接到SMTP服务器

    我无法从PC连接到SMTP服务器. 我使用Debian sid. telnet mail.example.com 25 Trying 12.23.34.45... telnet: Unable to ...

  2. linux无法连接邮件服务器,linux – 无法连接到SMTP服务器

    我无法从PC连接到SMTP服务器. 我使用Debian sid. telnet mail.example.com 25 Trying 12.23.34.45... telnet: Unable to ...

  3. 16.4.1 连接到 IMAP 服务器

    就像你需要一个 SMTP 对象连接到 SMTP 服务器并发送电子邮件一样,你需要 个 IMAPClient 对象,连接到 IMAP  服务器并接收电子邮件.首先,你需要电子件服务提供商的 IMAP 服 ...

  4. 微软BI 之SSRS 系列 - 报表邮件订阅中 SMTP 服务器匿名访问与 Windows验证, 以及如何成功订阅报表的实例...

    这篇文章源于在上一篇博文中有园友提出订阅 SSRS 报表时的一个问题,  于是就好好总结了一下,把有关 SSRS 报表订阅的要点和容易出现问题的地方写出来,希望对大家有所帮助! 参看上一篇博文 - S ...

  5. 服务器怎么支持smtp,smtp服务器是什么意思_smtp服务器怎么设置

    smtp服务器是什么意思 SMTP的全称是"SimpleMailTransferProtocol",即简单邮件传输协议.它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮 ...

  6. java gmail smtp_使用Javamail连接到Gmail smtp服务器会忽略指定的端口,并尝试使用25...

    我正在尝试在groovy脚本中使用javamail通过gmail发送电子邮件.我在网上看了很多地方,到目前为止还无法正常工作.运行脚本时出现的错误是: DEBUG SMTP: useEhlo true ...

  7. java mail 端口号_使用Javamail连接到Gmail smtp服务器将忽略指定的端口并尝试使用25...

    我试图使用javamail在groovy脚本通过gmail发送一封电子邮件.我已经看了很多地方在网上,一直无法得到它的工作到目前为止.我在运行我的脚本时遇到的错误是: DEBUG SMTP: useE ...

  8. 一键生成smtp发件服务器文件,附录 D:创建 SMTP 服务器

    附录 D:创建 SMTP 服务器 06/08/2017 本文内容 创建供 SQL Server Database Mail 使用的 SMTP 服务器. 使用以下任何版本的 SQL 时,需要 SQL S ...

  9. 邮箱伪造之搭建匿名SMTP服务器

    电子邮件欺骗(email spoofing)的根本原因是SMTP协议是不需要身份验证的,攻击者可以利用这个特性伪造电子邮件头,从任意电子邮件地址发送任何人,导致信息看起来来源于某个人或某个地方,而实际 ...

  10. 常用邮箱POP3和SMTP服务器 设置

    [网易 163.126免费邮箱目前不直接开放smtp.pop3服务.有需要的用户可通过购买随身邮或邮箱伴侣及加入会员中心获得.从2006年11月16日起新注册用户,将无法使用POP客户端功能,之前注册 ...

最新文章

  1. 300万知乎多标签文本分类任务经验分享(附源码)
  2. 《编程导论(Java)#183;1.4.1 范式》
  3. 办公文档加密,企业文档加密,强制性透明加密技术,fasoft
  4. 2021最新报告:一文洞察智慧金融发展现状
  5. 【哲学】形而上学具体指什么?metaphysics
  6. Middle of the Contest
  7. windows2008安装
  8. 在JavaScript中创建命名空间的几种写法
  9. 我国4G标准拓展国际市场取得重要突破
  10. NB-IoT在无线烟感监控系统中的优势
  11. 从0到1,数据治理一周年大纪实
  12. 你在项目中做过哪些安全防范措施?
  13. 设定session.timeout=30后,可是不到5分钟session变量就消失了.为什么?
  14. LZJ的python第6次打卡
  15. 取模(取余)的具体含义
  16. 跟网络游戏,手机APP游戏告别
  17. Vagrant 介绍
  18. flash as3使用,播放声音和加载外部声音文件
  19. GPS 校验和 代码_PSPad editor(代码编辑器)v5.0.4.507绿色版
  20. 牛腩新闻发布--过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数(三)

热门文章

  1. golang java 对比_golang编程语言和java的性能对比
  2. verilog qpsk调制解调
  3. 游戏必备组件有哪些_微信抖音小游戏黄金矿工案例详解
  4. gmssl编译linux,gmssl编译安装出错解决
  5. stata15中文乱码_Stata转excel中文乱码解决方法
  6. 电动自行车的2020:红利、分化、意外、质疑
  7. SSD固态硬盘检测工具AS SSD参数
  8. UDS协议(车辆控制单元诊断系统开发架构及DID读取数据流程)
  9. 手把手教你如何下载编译Spring源码
  10. 交换机中对于tagged帧和untagged帧的处理