好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python发邮件脚本,Python调用163邮箱SMTP服务实现邮件群发

邮件营销,一个昔日辉煌,如今没落的广告营销方式,曾经的恶意广告邮件群发,到现在还存留着的大站协议群发,可能还是有不少人能够做到正常群发邮件,但大概率很多人都不会点开邮件查看邮件内容吧,除非是很许可的,重要的邮件通知,比如面试相关邮件。

不过国外,尤其是外贸,对于邮件营销,邮件的收发还是存在的,这就有了下面这个命题,Python发邮件脚本,本渣渣当然不会,直接调包吧,度娘搜索现成的脚本,例子,即可,好好的做一个调包侠,难道不香吗?

关于SMTP

SMTP 的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。

SMTP 认证,简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。

增加 SMTP 认证的目的是为了使用户避免受到垃圾邮件的侵扰。

网易163免费邮箱相关服务器信息:

PyEmail库 安装

 pip?install?PyEmail
 

PyEmail库 使用

模块名:Pyemail

包含类:PyEmail()

实例化:mail = PyEmail('mixed')

参数有:alternative,related,mixed(来自于email模块)

登录三方SMTP:mail.enter(mail_host=, port=, mail_user, mail_pass=)

第一参数是第三方SMTP地址 第二参数是对应端口 第三参数是邮箱账号 第四参数是授权码

发送邮件:mail.sendemail(sender=, receivers=)

第一参数是发送者邮箱地址(字符串格式) 第二参数是接收者邮箱地址(字符串的列表)

构造头部信息:mail.header_info(from_= ; to_= ; subject= )

第一参数是发件人(字符串格式)

第二参数是收件人(字符串格式)

第三参数是主题信息(字符串格式)

构造纯文本内容:mail.Text(text=)

唯一参数text,纯文本内容(字符串格式)

构造超文本内容:mail.Html(hype_text=)

唯一参数hype_text,超文本内容(字符串格式)

构造图片内容:mail.Image(pic_address=, pic_cid)

第一参数是图片地址(字符串格式)

第二参数是图片id(字符串格式),与超文本中cid保持一致

构造附件内容:mail.Enc(enc_address=. enc_name=)

第一参数是附件地址(字符串格式)

第二参数是附件名称(字符串格式),在邮件中显示的名称

源码参考

 #Python?网易邮箱简单发送邮件
#?-*-?coding:?utf-8?-*-


import?smtplib??#?导入PyEmail
from?email.mime.text?import?MIMEText
import?time


#?邮件构建

def?send(i):
????subject?=?f"【第{i}封】滴滴答答~胖子快收邮件!"??#?邮件标题
????sender?=?"xxxxx@163测试数据"??#?发送方
????content?=?"国庆中秋双节快乐!"
????recver?=?"xxxxxx@qq测试数据"??#?接收方
????password?=?"*******"?#邮箱密码
????message?=?MIMEText(content,?"plain",?"utf-8")
????#?content?发送内容?????"plain"文本格式???utf-8?编码格式

????message['Subject']?=?subject??#?邮件标题
????message['To']?=?recver??#?收件人
????message['From']?=?sender??#?发件人

????smtp?=?smtplib.SMTP_SSL("smtp.163测试数据",?994)??#?实例化smtp服务器
????smtp.login(sender,?password)??#?发件人登录
????smtp.sendmail(sender,?[recver],?message.as_string())??#?as_string?对?message?的消息进行了封装
????smtp.close()
????print("发送邮件成功!!")



if?__name__=='__main__':
????for?i?in?range(1,11):
????????send(i)
????????time.sleep(8)
 

群发效果

测试了一下163免费邮箱发送QQ邮箱,几乎都进入垃圾箱,发十封邮件,可能只有一两封没有进垃圾箱,可想而知,现今对于邮件营销的的控制,相信也从中可以看出昔日广告邮件的疯狂程度,话说,现在国内谁还看邮件呢,除了必要的邮件通知,几乎大概率都是广告邮件,恶意营销吧!

参考来源:

什么是POP3、SMTP和IMAP?

https://help.mail.163测试数据/faqDetail.do?code=d7a5dc8471cd0c0e8b4b8f4f8e49998b374173cfe9171305fa1ce630d7f67ac22dc0e9af8168582a

【私人订制Python模块库】Pyemail:更方便快捷地发送电子邮件

https://blog.csdn.net/nilvya/article/details/104658472

Python PyEmail包_程序模块 - PyPI - Python中文网

https://HdhCmsTestcnpython测试数据/pypi/pyemail

python使用163邮箱发送邮件

https://blog.csdn.net/qlzy_5418/article/details/86661883

?? ? ?

微信公众号:二爷记

不定时分享python源码及工具

查看更多关于Python发邮件脚本,Python调用163邮箱SMTP服务实现邮件群发的详细内容...

  阅读:41次