暂未分类暂未分类检查邮箱是否可登陆和发送邮件
zphj1987前言
邮箱系统在提供了用户名和密码以后可以发送邮件,而在发送之前我们有个需求是需要验证下这个密码是不是正确的,本篇的内容就是用python默认的库来检测邮箱是不是可以登录的
验证
这个采用的是python默认带的库smtplib,是一个发送邮件的库,脚本文件如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
import sys import os
username=sys.argv[1] password=sys.argv[2] chinesname=sys.argv[3]
import smtplib from email.mime.text import MIMEText mail_host = 'smtp.qq.com' mail_user = '%[email protected]' % username
mail_pass = '%s' % password
sender = '[email protected]' receivers = ['[email protected]']
message = MIMEText('python content','plain','utf-8') message['From'] = sender message['To'] = receivers[0]
try:
smtpObj = smtplib.SMTP() smtpObj.connect(mail_host,25) smtpObj.login(mail_user,mail_pass) smtpObj.sendmail( sender,receivers,message.as_string())
smtpObj.quit() print('可以登录并发送测试邮件 %s' %(chinesname)) except smtplib.SMTPException as e: print('error',e)
|
上面的python脚本是验证是否能登陆的,这个地方传递三个参数进去
用户名,密码或授权码,中文名称
1
| python /tmp/send.py 199383004 xxxxxxx 磨渣
|
如果不想上面的发送就注释掉sendmail部分即可
QQ邮箱密码是授权码,去邮箱设置里面生成,企业邮箱可以直接使用密码即可
总结
linux发送邮件的方式有很多,越简单的越好,能实现自己想要的效果即可
附录
1 2 3 4 5 6 7
| #! /bin/sh cat lianxirenwithname.txt | while read line; do name=`echo $line|awk '{print $1}'` chinesname=`echo $line|awk '{print $2}'`
python testemail.py $name default-password $chinesname
|
如果是有一个邮件列表,想去检查很多邮件是不是可以登录,可以通过一个列表,然后调用python的脚本去验证即可
更新历史
why |
when |
创建 |
2019年09月03日 |
更新 |
2019年12月9日 |