python获取外网IP并发邮件的实现方法

第一步:通过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}\.\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并发邮件的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python获取本机外网ip的方法

    本文实例讲述了python获取本机外网ip的方法.分享给大家供大家参考.具体如下: python从显示ip地址的网站获取本机外网ip,这段python代码抓取网站上的ip地址信息 import urllib import re print "we will try to open this url, in order to get IP Address" url = "http://checkip.dyndns.org" print url request = ur

  • Python简单获取自身外网IP的方法

    本文实例讲述了Python简单获取自身外网IP的方法.分享给大家供大家参考,具体如下: #encoding=utf-8 #author: walker #date: 2016-03-07 #function: 获取自己的外网IP import requests from bs4 import BeautifulSoup #获取外网IP def GetOuterIP(): url = r'http://www.whereismyip.com/' r = requests.get(url) bTag

  • python获取外网ip地址的方法总结

    本文实例总结了python获取外网ip地址的方法.分享给大家供大家参考.具体如下: 一.利用脚本引擎库直接获取 import console; import web.script import inet.http; var jsVm = web.script("JavaScript") jsVm.AddCode( inet.http().get("http://fw.qq.com/ipaddress") ) var ipAddr = jsVm.CodeObject.

  • Python之自动获取公网IP的实例讲解

    0.预备知识 0.1 SQL基础 ubuntu.Debian系列安装: root@raspberrypi:~/python-script# apt-get install mysql-server Redhat.Centos 系列安装: [root@localhost ~]# yum install mysql-server 登录数据库 pi@raspberrypi:~ $ mysql -uroot -p -hlocalhost Enter password: Welcome to the Ma

  • python获取外网IP并发邮件的实现方法

    第一步:通过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 #################################

  • C和MFC巧妙获取外网IP的两种实现方法

    本文以C与MFC的两个实例详述了取外网IP的两种实现方法,具体实现代码如下: MFC语言实现获取外网IP: # include <windows.h> # include <urlmon.h> # pragma comment(lib,"URLMON.lib") void main() { URLDownloadToFile(NULL,"http://www.ip138.com/ip2city.asp","ip.txt",

  • 获取外网IP并发送到指定的邮箱的脚本

    我们编译后的exe文件,方便大家直接使用 下载地址 http://www.jb51.net/softs/44627.html 配置文件内容如下: 复制代码 代码如下: 配置文件代码 [收件人] 收件地址= 邮件标题= [发送人] 邮箱= 密码= 核心代码: 复制代码 代码如下: #region AutoIt3Wrapper 预编译参数(常用参数) #AutoIt3Wrapper_Icon=D:\ico\3444\2222.ico ;图标,支持EXE,DLL,ICO #AutoIt3Wrapper

  • 使用Python获取并处理IP的类型及格式方法

    公网与私有网络的判断其实十分简单,只要记住私有网络的三个网段.不过,对于记性不好的人或者学识不是很高的机器来说,有一种判断方法还是有必要的. 写如下脚本: from IPy import IP ip1 = IP('192.168.1.2') ip2 = IP('11.12.13.14') print("ip1 type: %s" % ip1.iptype()) print("ip2 type: %s" % ip2.iptype()) print("ip2

  • 分享Python获取本机IP地址的几种方法

    目录 1.使用专用网站 2.使用自带socket库 3.使用第三方netifaces库 1.使用专用网站 获取的是公网IP 网址:http://myip.ipip.net 代码: import requests res = requests.get('http://myip.ipip.net', timeout=5).text print(res) 比较喜欢用这个,在命令窗口也能使用: curl http://myip.ipip.net 2.使用自带socket库 获取的是局域网IP. impo

  • 获取外网IP并发送到指定邮箱的vbs代码[已测]

    复制代码 代码如下: ''getIP set http=createobject("Microsoft.XMLHTTP") ipp="http://www.ip138.com/ip2city.asp" http.open "get",ipp,false http.send ss=bytes2BSTR(Http.responsebody) intStrA = InStr(1,ss,"[",1)+1 sss=mid(ss,intS

  • 使用Python更换外网IP的方法

    在进行数据抓取时,经常会遇到IP被限制的情况,常见的解决方案是搭建代理IP池,或购买IP代理的服务.除此之外,还有一个另外的方法就是使用家里的宽带网络进行抓取.由于家里的宽带每次断开重新连接时都会分配一个新的IP,所以在我们抓取数据的时候,判断当IP被禁掉时,立即在路由器中进行断开重新连接操作.考虑到人工操作比较繁琐,另外也不可能一直盯着执行的程序,就考虑使用Python自动多路由器进行设置. 以下代码为针对家里的TP-Link进行的设置,其他路由器的设置原理也应该一样. import base

  • VBS获取外网IP地址并发送到指定邮箱的代码

    复制代码 代码如下: Function GetIPAddress() Dim Flag, Source Set GetIPObj = WScript.GetObject("http://ipseeker.cn//") Flag = 0 For i=1 To 10    If GetIPObj.readyState = "complete" Then     Flag=1    Exit For    End If    WScript.Sleep 500 Next

  • 获取外网IP地址的批处理代码

    复制代码 代码如下: ::========================================== :: IP.bat :: v0.1 :: jinminghou.cn@2009-12-22 ::========================================== @echo off title GetIP set ip=unknown echo On Error Resume Next:Set oDOM=WScript.GetObject("http://www.j

随机推荐