iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python基于SMTP发送邮件的方法
  • 676
分享到

Python基于SMTP发送邮件的方法

2024-04-02 19:04:59 676人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录构建消息对象发送邮件要点在很多时候,使用 python 发送邮件可能没有办法使用邮件服务器提供的 api,因为不是所有的邮件服务商都会提供 API 供客户使用的。 通常使用邮件

在很多时候,使用 python 发送邮件可能没有办法使用邮件服务器提供的 api,因为不是所有的邮件服务商都会提供 API 供客户使用的。

通常使用邮件 API 的邮件发送服务都需要额外的收费。

因此我们再邮件测试发送的时候,可能需要的是 SMTP 邮件发送服务,通常这个服务是所有邮件服务商都会提供的。

要使用 SMTP 邮件发送服务,你需要有下面的信息才可以完成和测试:

  • SMTP 邮件服务器的地址,端口,登录用户名和登录用户密码
  • 发送和接收邮件的地址
  • 邮件的主题和正文

看起来是不是有点复杂,实际上,Python 提供了一个sendmail 的方法,这个方法在 smtplib 库中。

简单来说按照下面的步骤来做就可以了。

构建消息对象

在 Python 中有一个库为 MIMEMultipart,我们可以使用这个来构建消息对象。

要做的事情也比较简单,在定义 MIMEMultipart 对象后,你需要在这个对象中设置是谁发送的,发送给谁,主题是什么。

然后再在这个对象中插入正文,你可以插入 html 也可以插入纯文本。

为了让邮件比较美观,通常我们都会插入 HTML 的文本,很多时候为了插入更多的数据,我们还可能会用到模板。

发送邮件

在定义完成消息对象后,我们就可以发送邮件了。

在发送邮件之前,我们需要初始化 SMTP 对象,通常使用的是 smtplib.SMTP(smtpserver) 方法。

在这个方法中,我们会定义发送邮件服务器的地址和端口。

随后我们可能会调用一个 starttls 方法,这个方法是希望发送邮件服务器使用的是 TLS 模式。

随着技术的进步,和安全的考虑,很多邮件发送服务器都要求使用 TLS 模式来进行发送。

然后使用 server.login(email_user, email_passwd) 方法来登录服务器。

在上面的步骤完成后,我们就等于完成了你的 Python 代码和邮件服务器的通信了,你的代码在这个时候会拿到服务器的对象了,并且完成了对象的初始化了。

在这一步完成后就可以调用 sendmail 函数发送邮件。

当邮件发送完成后,不要忘记关闭邮件服务器的连接。


 # Connect to the SMTP server
 server = smtplib.SMTP(smtpserver)
 server.starttls()
 server.login(email_user, email_passwd)
 sending_response = server.sendmail(from_addr, to_addr, message.as_string())
 print(sending_response)
 server.quit()

针对上面的发送服务,请参考下上面提供的伪代码。

完整的测试代码请参考 GitHub 上面的:python-tutorials/SendMailSMTP.py at master · cwiki-us-docs/python-tutorials · gitHub

要点

Python 发送邮件的服务还是比较简单的。

因为邮件发送服务都需要和第三方的邮件服务器进行通信,在这个通信的过程中,最重要的步骤就是先要获得邮件服务器的链接。

通常这个链接因为有防火墙,发送用户名限制,密码要求等等可能会导致连接获得失败而没有办法拿到连接服务器的对象。

针对遇到的情况具体问题具体分析就可以了。

遵循的原则步骤就是:

  1. 构建消息
  2. 获得服务器连接
  3. 发送邮件
  4. 关闭服务器连接

需要注意的是不要忘记关闭服务器连接。

以上就是Python基于SMTP 发送邮件的方法的详细内容,更多关于Python SMTP 发送邮件的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python基于SMTP发送邮件的方法

本文链接: https://www.lsjlt.com/news/122322.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python基于SMTP发送邮件的方法
    目录构建消息对象发送邮件要点在很多时候,使用 Python 发送邮件可能没有办法使用邮件服务器提供的 API,因为不是所有的邮件服务商都会提供 API 供客户使用的。 通常使用邮件 ...
    99+
    2024-04-02
  • python基于SMTP发送QQ邮件
    python基于SMTP发送QQ邮件,供大家参考,具体内容如下 第一步: 1.打开qq邮箱,开启smtp服务 2.验证密保 3.获取授权码 python代码里面使用 在Pyth...
    99+
    2024-04-02
  • python SMTP邮件发送
    本例使用的时python2.7环境,python3的操作应该也是差不多的。 需要用到smtplib和email两个包。 发送文本类型的邮件 下面看个发送文本邮件的例子(使用网易163的SMTP): # -*- coding: UTF-8 ...
    99+
    2023-01-31
    邮件发送 python SMTP
  • Python中怎么使用SMTP发送邮件
    这篇“Python中怎么使用SMTP发送邮件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python中怎么使用SMTP发送...
    99+
    2023-06-28
  • Python中如何使用SMTP发送邮件
    本篇文章为大家展示了Python中如何使用SMTP发送邮件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python创建 SMTP 对象语法import smtplib smtp...
    99+
    2023-06-02
  • 基于JavaMail的Java邮件发送
    目录邮件绑定功能1、javamail发送邮件1.1、简介1.2、工具类1.3、工具类测试2、客户注册时,发送祝贺邮件邮件绑定功能 【需求】 1、 用户注册时,输入邮箱 ...
    99+
    2024-04-02
  • PHP使用简单邮件传输协议(SMTP)发送邮件的方法
    随着互联网的发展,邮件已经成为了人们日常交流的重要方式之一。而对于一些网站开发者来说,在网站中发送邮件也显得尤为关键。PHP作为一种服务器端脚本语言,自然也需要提供一种发送邮件的方式。本文就将介绍PHP使用简单邮件传输协议(SMTP)发送邮...
    99+
    2023-05-22
    PHP 邮件发送 SMTP
  • phpmailer用smtp发送邮件的过程
    这篇文章主要介绍“phpmailer用smtp发送邮件的过程”,在日常操作中,相信很多人在phpmailer用smtp发送邮件的过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • Golang如何实现smtp邮件发送
    本文小编为大家详细介绍“Golang如何实现smtp邮件发送”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang如何实现smtp邮件发送”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。使用函数SendMai...
    99+
    2023-07-05
  • 怎么在Python项目中利用SMTP发送邮件
    这期内容当中小编将会给大家带来有关怎么在Python项目中利用SMTP发送邮件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。通常使用邮件 API 的邮件发送服务都需要额外的收费。因此我们再邮件测试发送的时...
    99+
    2023-06-14
  • python实现发送邮件的方法
    这篇文章将为大家详细讲解有关python实现发送邮件的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.设置邮箱,如下图所示2.设置过程如下图所示:设置完成后,添加如下代码:# coding...
    99+
    2023-06-06
  • PHP使用SMTP协议和SSL加密方式发送邮件的方法
    随着电子邮件的普及和需求增加,邮件服务已经成为现代通信的重要组成部分。很多网站和应用程序都需要发送邮件,因此掌握发送邮件的技巧和方法就变得至关重要。本文将着重介绍如何使用PHP通过SMTP协议和SSL加密方式发送邮件,这种方式可以保证邮件的...
    99+
    2023-05-22
    PHP SMTP协议 SSL加密
  • PHP使用SMTP协议和TLS加密方式发送邮件的方法
    随着互联网的不断发展,电子邮件已成为人们日常工作和生活中重要的通信工具之一。在网络开发中,我们经常需要借助代码向用户或其他系统发送邮件以达到通知、提醒等目的,本文将介绍如何使用PHP语言通过SMTP协议和TLS加密方式发送邮件。一、SMTP...
    99+
    2023-05-22
    PHP SMTP协议 TLS加密方式
  • go smtp实现邮件发送示例详解
    目录smtp指令go demosdk中SendMail方法DialAndSend实现smtp指令 书接上文邮件实现详解,这里我们及我们简单复习一下smtp的指令如下: telnet ...
    99+
    2024-04-02
  • 基于JavaMail实现简单邮件发送
    本文实例为大家分享了JavaMail实现简单邮件发送的具体代码,供大家参考,具体内容如下 1.引入依赖 <dependency>     <groupId>o...
    99+
    2022-11-13
    JavaMail 邮件发送
  • python 邮件发送
    环境:python2.7 1 #coding:utf-8 2 from __future__ import unicode_literals 3 __author__ = 'crista' 4 5 import smtpli...
    99+
    2023-01-30
    邮件发送 python
  • python发送邮件
    python通过smtp发送qq邮件 import smtplib from email.mime.text import MIMEText from email.header import Header """ 1》测试邮件发送 ...
    99+
    2023-01-30
    发送邮件 python
  • python 发送邮件
    #!/usr/bin/env python#coding:utf-8 import smtplib,time,stringfrom email.mime.text import MIMEText SMTPserver = 'smtp.exm...
    99+
    2023-01-31
    发送邮件 python
  • python发送邮件的几种常用方法
    第一种是最常见的,smtp发送 import smtplibimport sysimport tracebackfrom email.mime.text import MIMETextfrom email.mime.multipart im...
    99+
    2023-09-02
    python 开发语言
  • python发送、抄送邮件
    python发送抄送邮件 sendemial.py #!/usr/bin/python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMETe...
    99+
    2023-01-31
    邮件 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作