樹莓派實戰2:發送ip地址到自己郵箱

接上:


2、
發送郵件的程序:
網上有很多做法,通過web.py自帶的庫來發送郵件最爲方便
先配置python +web.py
shell中輸入 python 
如果顯示 Python 2.7.3,說明打開python2成功(如果要退出,ctrl+z)
繼續輸入import web 
如果ImportError: No module named xxx,則未安裝web.py
如果不報錯,則已安裝web.py
安裝web.py如下
shell中輸入   wget http://webpy.org/static/web.py-0.37.tar.gz
然後 tar -xf web.py-0.37.tar.gz 
然後sudo python setup.py install
再次嘗試import web  ,如果不報錯,則 安裝成功
3、
發送ip到郵箱程序的實現:
在終端中nano mail.py,然後寫入這些內容,配置自己的賬號密碼,如果報錯,可能是程序縮進的原因
#!\usr\bin\env python  
#encoding: utf-8  
import web  
#程序通過直接調用web.py裏面的庫 來實現發郵件  
#cc,bcc 使用了默認參數
def send_mail(send_to, subject, body, cc=None, bcc=None):  
    try:  
        web.config.smtp_server = 'smtp.163.com'   ##郵件發送服務器  
        web.config.smtp_port = 25    ##不設置將使用默認端口  
        web.config.smtp_username = '你的郵箱用戶名,無@xx.com'   ##郵件服務器的登錄名  
        web.config.smtp_password = '你郵箱的密碼'   ##郵件服務器的登錄密碼  
        web.config.smtp_starttls = True  
        send_from = '你的郵箱賬號,[email protected]'    ##發送的郵件          
        web.sendmail(send_from, send_to, subject, body, cc=cc, bcc=bcc)  
        return 1  #pass  
    except Exception, e:  
        print e  
        return -1 #fail  
  
if __name__=='__main__':  
    send_to = ['發送給誰']     
    subject = '郵件標題'  
    body = '郵件內容\n試一下噻'  
    cc = ['抄送給誰']   ##抄送  
    bcc = ['密送給誰']  ##密抄  
    send_mail(send_to, subject, body, cc, bcc) 
配置完成之後,python mail.py 這時候你的郵箱就成功發送了
其中:body 是你在信中要寫的內容
注意:  程序調用web.sendmail較慢,估計2s左右。
以下是我的mail.py:
#!\usr\bin\env python  
#encoding: utf-8  
import web  
def send_mail(send_to, subject, body, cc=None, bcc=None):  
    try:  
        web.config.smtp_server = 'smtp.163.com'   ##郵件發送服務器  
        web.config.smtp_port = 25    ##不設置將使用默認端口  
        web.config.smtp_username = 'xxxx'   ##郵件服務器的登錄名  
        web.config.smtp_password = 'xxxx'   ##郵件服務器的登錄密碼  
        web.config.smtp_starttls = True  
        send_from = '[email protected]'    ##發送的郵件  
        
        web.sendmail(send_from, send_to, subject, body, cc=cc, bcc=bcc)  
        return 1  #pass  
    except Exception, e:  
        print e  
        return -1 #fail  
if __name__=='__main__':  
    f=file('/home/pi/Desktop/ip.log')
    f1=f.read()
    f.close()
    send_to = ['[email protected]']          
    subject = 'connection check'  
    body = 'hello , xxxx! I am still alive. I will send you an email in another hour.',f1  
    send_mail(send_to, subject, body) 
此時的效果:
你已經收到了你樹莓派的內網和外網ip了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章