python获取外网IP并发邮件的实现方法
发布时间:2020-12-17 08:02:21 所属栏目:Python 来源:网络整理
导读:第一步: 通过ip138来爬取外网ip 第二步: 通过python的smtplib模块和email来发送邮件,具体用法去网上搜索, 下面是代码示例: #!/usr/bin/env python#coding:utf-8 import urllib2import reimport smtplibfrom email.MIMEText import MIMETextfrom email.H
第一步:通过ip138来爬取外网ip 第二步:通过python的smtplib模块和email来发送邮件,具体用法去网上搜索, 下面是代码示例: #!/usr/bin/env python #coding:utf-8 import urllib2 import re import smtplib from email.MIMEText import MIMEText from email.Header import Header ########################################## #get ip address url = "http://1212.ip138.com/ic.asp" url_op = urllib2.urlopen(url) url_content = url_op.read() ip_content = re.findall(r'd{1,3}.d{1,3}',url_content) ipcode = ''.join(ip_content) ################################################# # Setting mail-server,etc mail_host="smtp.sina.com" mail_user="ckl" mail_pass="woXXXX" mail_postfix="sina.com" ################################################# def send_mail(to_list,sub,content): me = mail_user + "<" + mail_user + "@" + mail_postfix + ">" msg = MIMEText(content) msg['Subject'] = sub msg['From'] = me msg['To'] = ";".join(to_list) try: s = smtplib.SMTP() s.connect(mail_host) s.login(mail_user,mail_pass) s.sendmail(me,to_list,msg.as_string()) s.close() return True except Exception,e: print str(e) return False ################################################# # Main process if __name__ == "__main__": mailto_list=["41145XXXX@qq.com"] if send_mail(mailto_list,"你的最新IP地址",ipcode): print "Send success!" else: print "Send failed!" 以上这篇python获取外网IP并发邮件的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |