使用Python 3发邮件

示例一:(使用yagmail模块)

直接使用别人封装好的第三方库:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018/6/5 21:42
# @Author  : zhdya
# @File    : demon.py

import yagmail

args = {

    "user": "[email protected]",
    "password": "xxxxx",
    "host": "smtp.163.com",
    "port": "465"
}

yagmail.SMTP(**args)

emailList =  ['[email protected]','[email protected]']

email = yagmail.SMTP(**args)
email.send(to=emailList, subject="这是主题", contents="这是内容。。", cc="[email protected]", attachments="Server.py")

参数:

User  用户民
Password 用户密码,很多情况需要使用授权码
Host   smtp的地址
Port    默认使用ssl协议,默认是465端口
To   收件人
Subject     主题
Contents    消息内容
Attachments   附件
Cc  抄送人

实例二、

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018/6/6 22:23
# @Author  : zhdya
# @File    : mmail2.py

import email.mime.multipart
import email.mime.text
import smtplib

msg = email.mime.multipart.MIMEMultipart()
msg['from'] = '[email protected]'
msg['to'] = '[email protected]'
msg['subject'] = 'I like Python'

context = '''Now the time is 20180606, I already learning Python from three month, during that time, I found a way which can let me learning fast...'''
text = email.mime.text.MIMEText(_text=context, _subtype="html")
msg.attach(text)

mmail = smtplib.SMTP_SSL()
mmail.connect("smtp.163.com", 465)
mmail.login("[email protected]", "xxxxxxx")
mmail.sendmail(from_addr='[email protected]', to_addrs='[email protected]', msg = msg.as_string())
mmail.close()

通过python发邮件步骤: 前提是:开通了第三方授权,可以使用smtp服务:

  1. 创建一个smtp对象
  2. 连接smp服务器,默认端口都是25
  3. 登录自己邮箱账号,
  4. 调用发送消息函数,参数:发件人,收件人,消息内容
  5. 关闭连接
mmail = smtplib.SMTP_SSL()
mmail.connect("smtp.163.com", 465)
mmail.login("[email protected]", "xxxxxxx")
mmail.sendmail(from_addr='[email protected]', to_addrs='[email protected]', msg = msg.as_string())
mmail.close()

创建一个消息对象:

msg = email.mime.multipart.MIMEMultipart()
msg['from'] = '[email protected]'
msg['to'] = '[email protected]'
msg['subject'] = 'I like Python'

分别指明邮件的发件人,收件, 只代表显示的问题。

消息内容:

定义一个字符串,来表示你得消息内容:

context = '''Now the time is 20180606, I already learning Python from three month, during that time, I found a way which can let me learning fast...'''

_subtype这个参数就决定了,你是以html解析的形式去发送,还是以text的形式去发送。

最终的效果:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用python发送邮件

    发送邮件这个功能非常实用,比如你写了一个爬虫,可以通过邮件来接收程序异常或者任务完成的通知,再比如你搭了一个网站,别人只需留下他的邮箱,你就可以自动给他发送邮件...

    谭小谭
  • [Python运维]使用Python发送邮件

    这个专题讲解Python相关方面的内容,首先是运维方面,例如数据库,Linux等,后续会有Web,爬虫等。

    bsbforever
  • 使用 python 发送邮件

    使用 python 发送邮件,这个也没啥讲的,分享三种方式发送邮件,最后一种三行代码就可以发送邮件,是不是很爽啊,话不多说,直接上代码

    andrew_a
  • python 使用stmp发送邮件

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式...

    py3study
  • Python 使用Gmail发送邮件

    py3study
  • python 使用exchange发送邮件

    py3study
  • 使用python发送html邮件

       最近一直在忙着业务迁移工作,己经有些日子没有写东西了,虽然写的很渣,还好是将功能实现了。

    py3study
  • 使用Python调用OUTLOOK发邮件

    OutLook选项——信任中心——信任中心设置——编程访问——从不向我发出可疑活动警告

    py3study
  • python笔记3-发送邮件(smtplib)

    前言 本篇总结了QQ邮箱和163邮箱发送邮件,邮件包含html中文和附件,可以发给多个收件人,专治各种不行,总之看完这篇麻麻再也不用担心我的邮件收不到了。 以下...

    上海-悠悠

扫码关注云+社区

领取腾讯云代金券