如何让你的香蕉派开机将ip发到你的邮箱

看到吧里还有很多新人刚入香蕉派,还没有合适的屏幕,静态ip在一些地方又不是那么方便,于是便写了一个脚本,实现开机自动将ip发到你的邮箱。
下面开始教程:
首先大家先创建一个名为send_ip.py的文本,将下面这段python代码复制进去

import socket
import fcntl
import time
import struct
import smtplib
import urllib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage

def sendEmail(smtpserver,username,password,sender,receiver,subject,msghtml):
msgRoot = MIMEMultipart(‘related’)
msgRoot"To"] = ‘,’.join(receiver)
msgRoot"From"] = sender
msgRoot’Subject’] = subject
msgText = MIMEText(msghtml,‘html’,‘utf-8’)
msgRoot.attach(msgText)
smtp = smtplib.SMTP()
smtp.connect(smtpserver)
smtp.login(username, password)
smtp.sendmail(sender, receiver, msgRoot.as_string())
smtp.quit()

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 "Network is not ready,Sleep 5s…"
time.sleep(5)
return True

def get_ip_address():
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect((“1.1.1.1”,80))
ipaddr=s.getsockname()[0]
s.close()
return ipaddr

if name == ‘main’:
check_network()
ipaddr=get_ip_address()
sendEmail(‘smtp.126.com’,‘你的发件邮箱’,‘发件邮箱的密码’,‘还是你的发件邮箱’,‘你的收件邮箱’],‘IP Address Of Banana Pi’,ipaddr)

大家记得修改脚本最后的参数,我已用中文标出来了,注意stmp.126.com是126的服务器,如果你是qq邮箱做发件邮箱,记得将服务器改为smtp.qq.com,其他邮箱要这样修改

现在大家把文本保存在/home/pi下,打开终端,输入

python send_ip.py

看看邮箱中有没收到新邮件,有的话继续向下看,没有的话返回检查脚本。

下面我们开始将这个脚本添加到香蕉派开机启动中去
首先进入root账户(不知道的自行百度)
cd /etc
nano rc.local
在fi后面添加这一行

/usr/bin.python /home/pi/send_ip.py

保存(ps:以后也可以这样添加开机启动脚本)
重启raspberry,你的邮箱就会有香蕉派的ip了。

原帖位置http://tieba.baidu.com/p/3653465092
香蕉派待验证

谢谢分享学习一下

发件邮箱和收件邮箱一样吗?

‘你的收件邮箱’]这个是可以省略吗?

那个教程也是我写的,这是一个python的脚本,别说香蕉派了,只要是linux系统就能跑。

你得有两个邮箱,一个收一个发

屌屌屌

你好,出行下面错误,怎么解决?

如下错误: