最近碰到个脑子可能不大正常的人,整天给一堆人群发乱七八糟的邮件,各种喷人、编造谣言和绯闻,看的很是心烦。
于是乎我找了段python代码,给她自动发邮件轰炸一下。
代码很简单,如下所示:
#coding: utf-8
import time
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
smtpserver = 'smtp.163.com'
username = 'username@163.com'
password = 'password'
sender = 'username@163.com'
receiver = ['username@qq.com']
# receiver = ['username1@qq.com', 'username2@163.com']
msg = MIMEMultipart('mixed')
subject = '发送主题'
subject = Header(subject, 'utf-8').encode()
msg['Subject'] = subject
msg['From'] = 'username <username@163.com>'
msg['To'] = 'username <username@163.com>'
# msg['To'] = 'username1 <username1@163.com>; username2 <username2@163.com>'
msg['Date'] = '2021-1-26'
text = "邮件正文"
text_plain = MIMEText(text, 'plain', 'utf-8')
msg.attach(text_plain)
total = 1000
send = 0
error = 0
while error < 10 and send < total:
try:
smtp = smtplib.SMTP()
smtp.connect('smtp.163.com')
smtp.login(username, password)
while send < total:
smtp.sendmail(sender, receiver, msg.as_string())
print("第{}封邮件发送成功!".format(send+1))
send += 1
error = 0
time.sleep(60)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()
except:
print("发生错误,重新发送")
error += 1
continue
首先你需要开启你的邮箱的POP3/SMTP和IMAP/SMTP服务,一般在邮箱设置的账户里,找找都能找到,注意开启后会获得一段授权码,牢记它!之后的操作用它来替换你原本的邮箱密码。
上面代码详细含义如下:
smtpserver
替换成你自己邮箱的服务器地址,百度可以搜到。username
替换成你的邮箱账号,也就是登陆的时候的账号名。password
替换成你的授权码,而不是原本的邮箱密码!sender
是你的发件人,替换成你的邮箱账号。receiver
是你的收件人,注释部分可以发送给多个人。注意很多邮箱有最大收件人个数的限制。subject
是你的邮件主题。msg['From']
是发邮件时显示的发件人信息。msg['To']
是发邮件时显示的收件人信息,注释部分也可以显示多个人信息,用分号隔开。msg['Date']
是发邮件日期。text
是邮件正文,这里我省略了图片、附件等发送方法,可以参考文末链接。total
是我设置的邮件轰炸次数,这里发送1000次,如果你是正常群发目的,设置成1次就行了。error
是允许报错次数,如果连续超过10次依然发送失败,那么就停止发送了。- 注意我这里设置了
time.sleep(60)
,也就是60秒发送一次。这个时间不能太短,不然发送过于频繁,会被判断成垃圾邮件!
如果运行提示缺少库,那就用pip install xxx
安装一下就行了。
像大家平时如果有群发邮件的正当需求,都可以用这个代码试试。不建议用它来轰炸其他人哦,这是不好的行为。