文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python实现邮箱发送信息

2024-04-02 19:55

关注

本文实例为大家分享了python实现邮箱发送信息的具体代码,供大家参考,具体内容如下

一、SSL

SSL 是指安全套接字层,简而言之,它是一项标准技术,可确保互联网连接安全,保护两个系统之间发送的任何敏感数据,防止网络犯罪分子读取和修改任何传输信息,包括个人资料。两个系统可能是指服务器和客户端(例如,浏览器和购物网站),或两个服务器之间(例如,含个人身份信息或工资单信息的应用程序)。

二、SMTP

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

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

三、实现邮箱轰炸

需要用到三个模块

​ 1、SMTP_SSL --传输加密,安全,也可以用smtplib,但是建议用SSL

​ 2、MIMEText --用来返回对象(返回对象方便操作),并且存放写入的内容

​ 3、Header --用来反检测,不写的话邮箱可能提示为垃圾邮箱,就不能发送信息了

三步骤:

​ 1、登录(SMTP_SSL)–要实例化SMTP_SSL对象

​ 2、发送写入的信息(sendmail(starthost,endhost,me.as_string())–starthost为

​ 3、退出(quit)


'''
参数说明:
    host: SMTP 服务器主机。 你可以指定主机的ip地址或者域名如:runoob.com,这个是可选参数。
    port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下SMTP端口号为25。
    local_hostname: 如果SMTP在你的本机上,你只需要指定服务器地址为 localhost 即可。
'''
import smtplib
smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )

'''
参数说明:
    from_addr: 邮件发送者地址。
    to_addrs: 字符串列表,邮件发送地址。
    msg: 发送消息
Python SMTP对象使用sendmail方法发送邮件,语法如下:
'''
SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options]

实现方式:

使用第三方邮箱服务:

列如用自己的qq邮箱服务来向对方(或者自己)发送(匿名)邮箱信息

但是得首先得到QQ邮箱的授权码(网上有教程,很简单)


'''
    Python 邮箱 深夜测试
    授权码:*****
'''
from smtplib import SMTP_SSL
from email.mime.text import MIMEText
from email.header import Header

#第三方服务(qq)
mail_host = 'smtp.qq.com'
mail_user = '27*****' #账号
mail_pws = '*****' #授权码

#登录
smtp = SMTP_SSL(mail_host)  #实例化
smtp.ehlo(mail_host)
smtp.login(mail_user,mail_pws)#登录

#我和对方的邮件地址
my_mail = '27*****@qq.com' #自己打的邮箱地址
her_mail = '*****@163.com' #对方的邮箱地址

#写入的内容
cont = '你好我是HV,我来自外星球!'
#
title = '来着地球的HV'

#内容格式化
for i in range(10): #向目标发送10个邮箱
    msg = MIMEText(cont,'plain','UTF-8') #plain为txt格式,如果直接写txt的话,会被检测为垃圾邮箱
    msg['Subject'] = Header(title,'UTF-8') 
    msg['From'] = my_mail #这里有填写您的邮箱地址格式,对方才会知道发件人是谁,要不然对方默认为(无发件人)
    msg['To'] = '我的好友' #这个要注意!这里只能填字符串,如果填其他的数据类型就会报错!
    smtp.sendmail(my_mail,her_mail,msg.as_string())
    # smtp.quit()

smtp.quit() #关闭SMTP,邮箱信息传输

当然也可以封装在函数里面方便调用

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯