python实现树莓派开机自动发送IP到指定邮箱
#!/usr/bin/python
# -*- coding:UTF-8 -*-
#测试发送邮件163邮箱发送到qq邮箱
import smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.utils import formataddr msg=MIMEText('请输入内容','plain','utf-8')
msg['From']='发送邮箱昵称 <xxx@163.com>'
msg['To']='接收邮箱昵称 <xxx@qq.com>'
#主题(主题不能为test等会被拦截)
msg['Subject']=Header('niceday','utf-8') server=smtplib.SMTP()
server.connect('smtp.163.com',25)
#密码为第三方客户端密码不是登录密码
server.login('xxx@163.com','密码')
server.sendmail('xxx@163.com','xxx@qq.com',msg.as_string())
server.quit()
#-*- coding: utf-8 -*-
#获取树莓派所有网络设备IP
import array
import struct
import socket
import fcntl SIOCGIFCONF = 0x8912
SIOCGIFADDR = 0x8915
BYTES = 4096
sck = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
names = array.array('B',b'\0' * BYTES)
bytelen = struct.unpack('iL', fcntl.ioctl(sck.fileno(), SIOCGIFCONF, struct.pack('iL', BYTES, names.buffer_info()[0])))[0]
namestr = names.tostring()
ifaces = [namestr[i:i+32].split('\0', 1)[0] for i in range(0, bytelen, 32)] #再获取每个接口的IP地址
iplist = []
for ifname in ifaces:
ip = socket.inet_ntoa(fcntl.ioctl(sck.fileno(),0x8915,struct.pack('256s',ifname[:15]))[20:24])
iplist.append(ifname+':'+ip) ip = '\r\n'.join(iplist)
print iplist
#检测网络
import urllib
def check_network():
while True:
try:
result=urllib.urlopen('http://baidu.com').read()
print result
print "Network is Ready!"
break
except Exception , e:
print e
print "Netwofk is not ready,Sleep 5s..."
time.sleep(5)
return True check_network()
python实现树莓派开机自动发送IP到指定邮箱的更多相关文章
- CentOS - 开机自动发送IP到指定邮箱 - smtp.163.com
1.简介: 服务器有时候是通过DHCP方式获取IP,一般服务器连个网线和电源就好了,要是每次开机还得连个显示器和键盘看看IP是多少就很不方便.懒人就让它自动发送个邮件.这里采用CentOS,163邮箱 ...
- 树莓派开机发送IP地址到邮箱
树莓派使用的wifi联网,在宿舍使用的是公共网络,不能设置静态ip,每次树莓派上电开机后ip地址可能会改变,所以让树莓派开机联网后自动发送ip地址到QQ邮箱 一.安装mutt和msmtp mutt: ...
- 让树莓派自动上报IP地址到邮箱,二代B
由于我使用树莓派的场景大多数是在没有显示器.只用terminal连接它的情况下,所以,它的IP地址有时会在重启之后变掉(DHCP的),导致我无法通过terminal连接上它.然后我又要很麻烦地登录路由 ...
- 树莓派开机自动启动Chomium浏览器并打开指定网页
树莓派开机自动启动Chomium浏览器并打开指定网页 cd /home/pi/.config mkdir autostart cd autostart vi my.desktop [Desktop E ...
- Python实现树莓派摄像头持续录像并传送到主机
关于树莓派,想必从事嵌入式开发的开发者都有听过,树莓派原名为Raspberry Pi,也就是它的英文读法,树莓派诞生于英国,由"Raspberry Pi 基金会"这个慈善组织注册开 ...
- RPi 2B 自动发送获取的IP到固定邮箱
/************************************************************************* * RPi 2B 自动发送获取的IP到固定邮箱 * ...
- Python 之自动获取公网IP
Python 之自动获取公网IP 2017年9月30日 文档下载:https://wenku.baidu.com/view/ff40aef7f021dd36a32d7375a417866fb84ac0 ...
- python实现树莓派生成并识别二维码
python实现树莓派生成并识别二维码 参考来源:http://blog.csdn.net/Burgess_Liu/article/details/40397803 设备及环境 树莓派2代 官方系统R ...
- \\ip 映射 指定的网络名不再可用
问题:\\ip 映射 指定的网络名不再可用 解决方法:服务器端打开服务列表 services.msc 启动两个进程 1.Computer Browser 2. Workstation 就正常了~~ ...
随机推荐
- echart 对双折线的使用
在使用echart的时候,我们会使用到双折线的情况.双折线不仅可以显示和隐藏,还可以根据实际的情况设置刻度的大小,比如Y坐标上的刻度大小.参考网址见:https://www.echartsjs.com ...
- Weblogic申请和配置SSL证书
一. 概述 SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协 ...
- [转]超级强大的SVG SMIL animation动画详解
超级强大的SVG SMIL animation动画详解 本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究.本文地址:http://www.zhangxinxu.com/wordp ...
- Oracle 循环插入测试数据(网上收集整理)
一 Oracle 循环插入测试数据 declare maxrecords constant int:=1000; i int :=1; begin for i in ...
- 20155237 2016-2017-2 《Java程序设计》第3周学习总结
20155237 2016-2017-2 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 对象:存在的具体实体,具有明确的状态和行为. 类:具有相同属性和行为的一组 ...
- mfc 私有成员
知识点 类的私有成员private 访问类的私有成员 内联函数inline 一.类的私有成员 用private定义的(变量)或者(函数)只能在本类中使用其他类不能中不能调用: 用public定义的(变 ...
- 【NOI2007】社交网络
[NOI2007]社交网络 Description 在社交网络(social network)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题.在一个社交圈子里有n个人,人与人之 ...
- idea tomcat热部署 Error running 'Tomcat 7': Unable to open debugger port (127.0.0.1:3622): java.net.SocketExcepti
2018/5/6 经过测试,发现只需要修改 http port 为 8081即可,JMX port 不用改 默认是 1099 今天在进 tomcat 的 debug 模式时报了此异常, tomcat ...
- 为firefox添加flash插件
需要自行下载flash for firefox进行安装,安装后即可看到 Shockwave Flash 插件
- CSS中的height与line-height的区别
<p class='text'>高与行高的区别</p> 那么我要想让这些字上下居中那么可以用宽度和行高控制 .text{ height:25px; line-height:25 ...