python 实现 ip138 作用
来源:互联网 发布:ibm大数据平台 编辑:程序博客网 时间:2024/04/29 06:22
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/usr/bin/env python
# -*- coding: utf-8 -*-# the script is used to query the location of every ip
import urllib
import json
#import sys
import re
from optparse import OptionParser
#淘宝ip库接口
url = "http://ip.taobao.com/service/getIpInfo.php?ip="
def ip_location(ip):
data = urllib.urlopen(url + ip).read()
datadict=json.loads(data)
# list =[]
for oneinfo in datadict:
if "code" == oneinfo:
if datadict[oneinfo] == 0:
return datadict["data"]["country"] + datadict["data"]["region"] + datadict["data"]["city"].ljust(40) + datadict["data"]["isp"]
#parser = OptionParser()
parser = OptionParser(usage="%prog [-i] <ip> [-f] <filename>", version="%prog 1.0")
parser.add_option("-f", "--file",
dest="filename",
help="read IP from this file",
metavar="FILE")
parser.add_option("-i", "--ip",
action="store",
dest="ips",
help="one ip like this 192.168.1.1")
(options,args) = parser.parse_args()
if len(args) !=1:
print parser.usage
if options.filename:
ipadd = r'\.'.join([r'\d{1,3}']*4)
re_ip = re.compile(ipadd)
fd=open(options.filename)
alllines=fd.readlines()
fd.close()
for line in alllines:
match = re_ip.match(line)
if match:
ip = match.group( )
print ip_location(ip)
if options.ips:
print ip_location(options.ips)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
灵感来自第一篇的nginx 日志分析脚本,因为在运维的工作中免不了查看某个Ip来自什么地方,尤其怀疑服务器遭受攻击,每次总要把ip复制到ip138 上一个一个查,效率甚低,这个小脚本可以让你的查询速度倍增,而且不离开命令行;
测试:
使用帮助看:
1
ip.py -h
运维路上有你有我也有他,机油互相帮助,才能互相进步!!!
0 0
- python 实现 ip138 作用
- ip138
- java调用ip138实现ip地址查询
- [Python] 从ip138网站爬取ip所处地点
- 借助IP138网站来实现本地系统的IP,身份证号,手机号码查询功能
- ip138首页源代码
- c#ip138自动获取代码
- python #!/usr/bin/python作用
- python 变量作用域
- python 变量作用域
- python hide语句作用
- python变量作用域
- python作用域
- python pass作用
- python 变量作用域
- python 变量作用域
- python变量作用域
- python引号作用
- Ubuntu go语言环境
- 8 个 jQuery 的 PDF 浏览插件
- Vim的分屏功能
- 程序的内存分配
- [收藏]NIO教程
- python 实现 ip138 作用
- JAVA获取文件的创建日期
- 读取postgis中数据写入shapefile-3
- mysql 使用federated 实现dblink 远程表访问
- 什么是web前端开发
- UML9种图之用例图(一)
- 在Flex中让Tree绑定数据后自动展开树节点
- 弹出半透明黑色遮罩层
- ubuntu中配置SSH