python获取外网IP并发邮件的实现方法
第一步:通过ip138来爬取外网ip
第二步:通过python的smtplib模块和email来发送邮件,具体用法去网上搜索,
下面是代码示例:
#!/usr/bin/envpython
#coding:utf-8
importurllib2
importre
importsmtplib
fromemail.MIMETextimportMIMEText
fromemail.HeaderimportHeader
##########################################
#getipaddress
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}\.\d{1,3}\.\d{1,3}',url_content)
ipcode=''.join(ip_content)
#################################################
#Settingmail-server,etc
mail_host="smtp.sina.com"
mail_user="ckl"
mail_pass="woXXXX"
mail_postfix="sina.com"
#################################################
defsend_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()
returnTrue
exceptException,e:
printstr(e)
returnFalse
#################################################
#Mainprocess
if__name__=="__main__":
mailto_list=["41145XXXX@qq.com"]
ifsend_mail(mailto_list,"你的最新IP地址",ipcode):
print"Sendsuccess!"
else:
print"Sendfailed!"
以上这篇python获取外网IP并发邮件的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。