最近测试了python
脚本执行钉钉机器人发消息和邮件发送,本想集成到上一篇文章中的脚本里,奈何想不到比较实用的场景。
突然想到自己的台式电脑是来电自动开机的设置,略有所思后想到把开关机事件自动发送邮件。
本人平生不知道注册多少个邮箱,想到163邮箱用的很少,所有就用它。登陆后发现里头有很多未读邮件,有安全提示和各种广告,都是几年前的了,估计是邮箱被盗用,全球各地的IP地址登陆和某位苹果玩家拿我邮箱修改了Apple ID……
一顿操作后把授权码弄出来了(1毛短信费),这个钉钉机器人就不记录操作步骤了,搜索引擎遍地都是,下面记录电脑开关机事件自动发送邮件过程。
获取邮箱授权码
这个步骤各大在线邮箱都差不多,基本都能在设置中找到
安装yagmail库
这是个第三方库,看到搜索引擎上满满的手写一大段代码填写邮件参数,这玩意儿还能这么不智能,不就是跟foxmail客户端一样填那几样参数么,所以使用yagmail,简单
1 | pip install yagmail |
代码
由于是两个不同的事件邮件,我分两个python脚本
auto_email_strtup.py
1 | import yagmail |
auto_email_shutdown.py
1 | import yagmail |
由于是windows电脑,还需要编写两个bat脚本中转运行以上代码
auto_email_strtup.bat
1 | python F:\xxxx\auto_email_startup.py |
auto_email_shutdown.bat
(需手动指定python解释器路径)
1 | C:\Python3.x.x\python.exe F:\xxxx\auto_email_shutdown.py |
window设置计划任务和组策略
开机自动邮件的设置
关机自动邮件的设置
dingtalkchatbot插件
夹带钉钉机器人发消息的代码,使用到以上这个库,具体见dingtalkchatbot插件
首先登陆钉钉,创建一个群,添加机器人,记录生成的webhook等参数
可以把以下代码组装成一个可传参的函数,调用的时候传递参数msg
可以设置各种条件发送不同的msg
电脑和手机已卸载钉钉,就没截图了
1 | from dingtalkchatbot.chatbot import DingtalkChatbot, ActionCard, CardItem |
最后
如果网络环境允许的话,可以编写python脚本探测设备的可达性、根据设备的告警阀值触发邮件发送和机器人信息发送,或其他条件触发
欢迎“
来电”来函探讨