树莓派 公网IP变动后 自动邮件通知 python
1. 获取公网IP
class Getmyip:def getip(self):try:myip = self.visit("http://www.ip138.com/ip2city.asp")except Exception, e1: logging.warning(str(e1))try:myip = self.visit("http://www.whereismyip.com")except Exception, e2: logging.warning(str(e2))myip = "So sorry!!!"return myipdef visit(self,url):opener = urllib2.urlopen(url)
# if url == opener.geturl():mystr = opener.read()return re.search('\d+\.\d+\.\d+\.\d+',mystr).group(0)
2. 发邮件
def send_mail(to_list,sub,content): mail_host="smtp.163.com" #设置服务器mail_user="aaa" #用户名mail_pass="aaa" #口令 mail_postfix="163.com" #发件箱的后缀me="hello"+"<"+mail_user+"@"+mail_postfix + ">"msg = MIMEText(content,_subtype='plain',_charset='utf8') msg['Subject'] = sub msg['From'] = me msg['To'] = ";".join(to_list) try: server = smtplib.SMTP() server.connect(mail_host) server.login(mail_user,mail_pass) server.sendmail(me, to_list, msg.as_string()) server.close() return True except Exception, e: print str(e) return False
3. 每半小时检查一次
if __name__ == '__main__': strLastIP = ''logging.info('Starting message')while True:logging.info('time.sleep begin')time.sleep(1600)logging.info('time.sleep end')getmyip = Getmyip()logging.info('Getmyip')localip = getmyip.getip()logging.info('getmyip.getip =' + localip)if localip == 'So sorry!!!' or localip == '':continueif localip == strLastIP :logging.info("The same ip : " + localip)else:logging.info( "localip ok : " + localip) if send_mail(mailto_list,"IP " + localip, localip): strLastIP = localiplogging.info( "send ok") else: logging.warning( "send err" )
4. 开机启动
编辑 /etc/init.d/rc.local
python /usr/local/work/sendmyip.py &
树莓派 公网IP变动后 自动邮件通知 python相关推荐
- Python爬虫-京东商品到货自动邮件通知
文章目录 前言 京东爬虫 网页分析 代码实现 效果演示 小结 前言 前阵子疫情严重期间,口罩遭到疯抢,各大电商平台口罩供不应求.本文简述如何通过 Python 爬虫不断监控京东商品是否有货,并在到货时 ...
- 一时兴起写的C++定期监测服务器IP变动并发送邮件的小工具
动机 由于实验室Windows服务器经常由于各种原因导致IP变动,所以就想在IP变动后自动获取新的IP并发邮件告诉我. PS.由于我们实验室的服务器的校园网只需要连接上就能上网,而且是动态IP,所以就 ...
- 自动发送邮件的服务器,自动邮件发送_任何情况立刻通知你
原标题:自动邮件发送_任何情况立刻通知你 Python自动邮件发送 在日常工作中,我们经常需要收发邮件,不知大家可曾想过,如果能够实现自动发送,那岂不是爽歪歪~ 就像跑图像检测的模型经常跑一两天,如果 ...
- 树莓派 自动发送公网IP至指定邮箱
第一步:获取公网ip,使用w3m工具,从whatismyip.org网站获取公网ip. 安装:sudo apt-get install w3m 使用:w3m -dump http://whatismy ...
- keepalived基本配置和邮件通知
keepalived配置和使用 安装: yum安装 yum install -y keepalived 编译安装 # 安装编译环境 yum install -y gcc openssh-server ...
- 阿里云服务器是如何实现每台服务器都是公网IP的呢?
根据我所知道的回答一下这个问题. 利用公有云(比如阿里云.腾讯云.华为云等)部署了应用之后,为了访问申请的云服务器,需要使用公网IP,公有云服务商不仅提供了固定的公网IP,更多采用的是弹性公网IP. ...
- 腾讯云什么是IP,如何更换公网IP以及可更换次数
1.什么是云服务器公网IP? 当用户在云服务器实例上部署的应用需要公开提供服务时,必须经由 Internet 传输数据,且必须具备一个 Internet 上的 IP 地址(亦称公网 IP 地址).腾讯 ...
- 优酷路由宝设置虚拟服务器,优酷路由宝添加“黑科技”,ROOT后加脚本,自动获取公网IP...
文章背景: 网友是江苏省中国移动的宽带用户,移动宽带上网需要拨号,而且有时候拨号获得的是公网IP,有时候获取到的是内网IP,向我求助帮忙,编写个脚本,让路由器自动判断.获取到内网IP就自动重启,直到获 ...
- Python 之自动获取公网IP
Python 之自动获取公网IP 2017年9月30日 文档下载:https://wenku.baidu.com/view/ff40aef7f021dd36a32d7375a417866fb84ac0 ...
最新文章
- MOOON-server新消息处理接口
- startservice方式启动服务
- 0403互联网新闻 | 哔哩哔哩上线电商类小程序;翼鸥教育和腾讯云联合发布ClassIn Cloud...
- Git中的日常使用 码云
- Ethercat解析(六)之功能概述
- php 调用父类变量,PHP-通过实例化父类访问常量
- 云计算实战系列四(Linux文件权限I)
- 迭代器,lower_bound说明
- java入学测试_OLI 课程 Java入学考试的五道题
- 【Linux】最常用命令:简单易学,但能解决95%以上的问题
- ThinkPHP5 php-jwt
- 荣耀手机安装谷歌框架_华为荣耀9青春版安装谷歌框架 无需Root 华为荣耀手机安装谷歌框架...
- 企业网络项目投标范文
- 前端微信小程序电影类仿淘票票微信小程序
- python 数列筛选_numpy ndarray 按条件筛选数组,关联筛选的例子
- 深剖基类和派生类的虚函数表
- Gitee码云 操作
- .cast( )函数的使用
- IntelliJ IDEA 如何实现代码展示自动换行
- 让按钮变灰色,不可用/
热门文章
- Java深克隆和浅克隆的原理及实现
- 60分钟教你实现Chatbot(基于pytorch)
- 【rotors】多旋翼无人机仿真(四)——参数补偿和PID控制
- 浅谈Wi-Fi渗透--原理篇
- 每日加瓦,终成栋房7-Object、Date、DateFormat、Calendar、System、StringBuider、包装类
- 技术总监是干什么的?
- nginx alias php,Nginx设置alias实现虚拟目录 alias与root的用法区别
- NBS的N把“瑞士军刀”——产品解读之规则设计器
- win8系统计算机属性在哪个文件夹,Win8如何更改文件夹的只读或系统属性
- 超赞 不愧是美团内部的JVM学习手册,从头到尾全是精华