系统网络运维zhaohang3031.blog.chinaunix.net
zhaohang3031
全部博文(240)
2017年(8)
2014年(4)
2013年(15)
2012年(4)
2011年(14)
2010年(55)
2009年(140)
wb123456
酷小川11
gdmzhqf
heu
Bsolar
浪花小雨
Phyllis6
vipty
grjboy30
分类: Python/Ruby
2010-03-29 00:23:16
#!C:\\python26\\python.exe# -*- coding:gbk -*-# ipfind.pyimport sys,reimport urllib2import socketdef Usage(): print '''说明: 1) 查询本机出口IP地址. 2) 查询IP地址所在的地域和类型. 3) 查询域名对应的IP地址. 0) 退出'''def trynet(): sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sk.settimeout(8) try: sk.connect(('ip138.com',80)) pass except Exception: print '*** 请保证您的Internet接入正常!' sys.exit() sk.close()def getmyip(): url = urllib2.urlopen('') result = url.read() m = re.search(r'(([01]?\d\d?|2[0-4]\d|25[0-5])\.){3}([01]?\d\d?|2[0-4]\d|25[0-5])',result) return m.group(0)def getdomainip(DOMAIN): iplist = socket.gethostbyname_ex(DOMAIN) return ', '.join(iplist[2]) def getnet(IP): if re.match(r'^(([01]?\d\d?|2[0-4]\d|25[0-5])\.){3}([01]?\d\d?|2[0-4]\d|25[0-5])$',IP): pass else: print '*** 您输入了错误的IP地址!' sys.exit() mysearch = "%s&action=2" % (IP) url = urllib2.urlopen(mysearch) result = url.read() m = re.search(r'(.*?)', result) return m.group(1).replace('本站主数据:',IP+' => ')def main(): trynet() Usage() while True: select = raw_input('*** 请选择您要查看的类型:') if select == '1': print '\n>>> 您的出口IP是:', getmyip() elif select == '2': myip = raw_input('*** 请输入您要查询的IP地址:') print '\n>>>', getnet(myip) elif select == '3': domain = raw_input('*** 请输入您要查询的域名:') print '\n>>>', getdomainip(domain) elif select == '0': break if __name__ == '__main__': main()
上一篇:常见 DDos 攻击
下一篇:Linux 下文件的几个特殊权限
登录 注册