一键群发邮件,不用机器人不用软件,教你群发

我的Python学习之路

大家好,记录一下我的Python学习之路,在家隔离期间,喜欢上了Python,今天花了一上午的时间利用yagmail模块写了一个自动发送群邮件的代码。
要想当年,苦于寻求群发机器人或者软件群发消息,都没有达到自己的理想状态,真是求人不如求己;,
1,利用yagmail单独发送一封邮件很简单,但是这都不是我们想要的结果,下面先看一下这个代码:

python]import yagmail
yag = yagmail.SMTP(user='[email protected]',
                   password='*******************', host='smtp.qq.com')   #  这里是填写自己的SMTP授权码,我的这里用星号代替
yag.send(to=1243813579@qq.com, subject=‘这是邮件标题’, contents=‘这是邮件内容’)

运行代码就能给邮箱发送一封邮件。(这是用我自己的qq测试的)

2,鉴于功能得实现,就要利用自己之前学习的知识进行升华呗
假设我有一个Excel表里面有好多邮箱,如何利用Python能够实现,群发功能
需要用到的模块是:xlrd,
考虑到重复发送同样的内容会被检测到,并被禁止,所以导入一个随机模块:random
又不能过于频繁发送邮件,再导入一个时间模块:time
利用for …in …循环将excel 中的邮箱,遍历出来直行代码进行发送
不会描述直接上代码吧:

import yagmail,random,xlrd,time

yag = yagmail.SMTP(user='[email protected]',
                   password='*****************', host='smtp.qq.com')

open_text = xlrd.open_workbook('D:/邮箱资源.xlsx')
open_sheet = open_text.sheet_by_index(0)

for i in range(1,open_sheet.nrows):
    time.sleep(30)
    email_num = open_sheet.cell_value(i,1)
    # mm = open_sheet.cell_value(i,1)
    suiji = random.randint(1,10000)
    subject = ('邀请你自动化[%s]发[%s]送' % (suiji,suiji))
    body = ('''朋友你好:
                  这是我自己编写的自动发送邮件的代码,不求人不依靠软件,纯代码;
                  如你也需要,忽[%s]略 可以加我微信:fafxff,教你一键群发;
                  如有打扰,下面奉上全网影视会员,在家隔离消磨时间!'''% suiji)
    h1 = '

云霄视界影视会员

'
a_link = '点击' \ '下载连接,前往下载,会员激活码: 联系里面的客服直接获取' yag.send(to=email_num, subject=subject, contents=[body,h1,a_link])

time.sleep(30),,这个是让代码每30秒直行一次
suiji = random.randint(1,10000),,生成一个0到10000随机数插入邮件标题和内容中
这个是我插入的一个影视会员的地址,可以全网会员,以免发送邮件 打扰别人,送的福利。

3,在群发过程中,有些邮箱发送失败就会终止代码,自己也不知道代码直行到什么地方了,发送了一个人,所有再次进行升级
加入一个tyr函数,到直行错误的时候,except: contuine 跳过此次发送
并且每次发送都print一次。
最终代码如下:

import yagmail,random,xlrd,time

yag = yagmail.SMTP(user='[email protected]',
                   password='******************', host='smtp.qq.com')
open_text = xlrd.open_workbook('D:/邮箱资源.xlsx')
open_sheet = open_text.sheet_by_index(0)

for i in range(1,open_sheet.nrows):
    time.sleep(30)
    email_num = open_sheet.cell_value(i,1)
    # mm = open_sheet.cell_value(i,1)
    suiji = random.randint(1,10000)
    subject = ('邀请你自动化[%s]发[%s]送' % (suiji,suiji))
    body = ('''朋友你好:
                  这是我自己编写的自动发送邮件的代码,不求人不依靠软件,纯代码;
                  如你也需要,忽[%s]略 可以加我微信:fafxff,教你一键群发;
                  如有打扰,下面奉上全网影视会员,在家隔离消磨时间!'''% suiji)
    h1 = '

云霄视界影视会员

'
a_link = '点击' \ '下载连接,前往下载,会员激活码: 联系里面的客服直接获取' try: yag.send(to=email_num, subject=subject, contents=[body,h1,a_link]) except: continue print('共计发送的邮件数:%d' % i)

发送结果如下:
一键群发邮件,不用机器人不用软件,教你群发_第1张图片
到此结束,大家有什么好的建议或者学习都可以相互交流,想要学习我里面提到的一些第三方模块都可以交流。谢谢

你可能感兴趣的:(我的Python之路,人工智能,python,机器学习)