前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python——发送邮件

python——发送邮件

作者头像
sjw1998
发布2019-09-29 14:56:10
9130
发布2019-09-29 14:56:10
举报
文章被收录于专栏:孤独的S

利用程序来发邮件的作用挺多的,在脚本运行时发送一个邮件给你,然后你可以知道脚本运行了,做到一个实时的监控。

代码语言:javascript
复制
import smtplib
代码语言:javascript
复制
from email.header import Header
代码语言:javascript
复制
def sendtheback(str):
    sendemaillsddress = "你的邮箱"  #用于发送邮件的地址
    sendemailpassword = "授权码"   #邮箱的密码
    sendemailhost = "smtp.qq.com"  #邮箱的服务器地址
    sendemailport = "465"  #端口
    recuveremailaddress = "接收的邮箱"   #接收的邮箱
    emailsubject = "关机"
    emalicontent = str

    message = MIMEText(emalicontent, 'plain', "utf-8")
    message["From"] = Header(sendemaillsddress, "utf-8")
    message["To"] = Header(recuveremailaddress, "utf-8")

    emailclient = smtplib.SMTP_SSL(sendemailhost, sendemailport)
    try:
        emailclient.login(sendemaillsddress, sendemailpassword)
        print("登录成功")
    except:
        print("登录失败")
    else:
        emailclient.sendmail(sendemaillsddress, recuveremailaddress, message.as_string())
        print("发送完成")
    finally:
        emailclient.close()

主要程序很简单,登录然后发送内容,把传过来的str参数发送出去,然后记得把服务close掉就可以了

也可以利用摄像头拍摄一张照片,然后把截图发送出去

代码语言:javascript
复制
cap = cv2.VideoCapture(0)
cap.isOpened()
ret_flag, Vshow = cap.read()
pic_name = "example.png"
cv2.imwrite(pic_name, Vshow)
cap.release()
#中间要有你的邮箱和授权
代码语言:javascript
复制
message['Subject'] = subject
message['From'] = sender
message['To'] = receivers
content = MIMEText('<html><body><img src="cid:imageid" alt="imageid"></body></html>', 'html', 'utf-8')
message.attach(content)
jpgpart = MIMEApplication(open(pic_name, 'rb').read())
jpgpart.add_header('Content-Disposition', 'attachment', filename=pic_name)
message.attach(jpgpart)
try:
    server = smtplib.SMTP_SSL("smtp.qq.com", 465)
    server.login(sender, "授权码")
    server.sendmail(sender, receivers, message.as_string())
    server.quit()
    print("发送成功")
except smtplib.SMTPException as e:
    sendtheback("截图发送失败")

然后获取电脑桌面的截图:

代码语言:javascript
复制
content = MIMEText('<html><body><img src="cid:imageid" alt="imageid"></body></html>','html','utf-8')
message.attach(content)
img = ImageGrab.grab()
pic_name = time.strftime('%Y-%m-%d-%H-%M-%S')+'.jpg'
img.save(pic_name)
jpgpart = MIMEApplication(open(pic_name, 'rb').read())
jpgpart.add_header('Content-Disposition', 'attachment', filename=pic_name)
message.attach(jpgpart)
try:
    server = smtplib.SMTP_SSL("smtp.qq.com",465)
    server.login(sender,"授权码")
    server.sendmail(sender, receivers, message.as_string())
    server.quit()
    print("发送成功")
except smtplib.SMTPException as e:
    sendtheback("截图发送失败")

差不多就是这些简单的代码就可以实现利用上一篇的接收邮件,然后接收到邮件的内容,然后对内容判断,如果内容是要桌面截图,就调用桌面截图的代码,实现截图然后把截图发送出去。算是比较逼格的程序了。

人生苦短,我用python

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-02-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 孤独的S 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档