码迷,mamicode.com
首页 > 其他好文 > 详细

批量查询ip地址归属地

时间:2016-12-22 20:26:00      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:please   ...   str   for   span   read   lib   int   main   

 1 #!/usr/bin/env python
 2 #-*-coding:utf-8-*-
 3 import urllib
 4 import urllib2
 5 import json
 6 import time
 7 import sys
 8 def check_ipaddr(func,*args, **kwargs):
 9     iplist = func(*args,**kwargs)
10     temp_list =[]
11     for line in iplist:
12         if line.split():
13             a = json.loads(line)
14             b = []
15             for item in a:
16                 if item not in b:
17                     b.append(item)
18             b = "".join(b)
19             temp_list.append(b)
20     return temp_list
21 
22 def check_url(res):
23     ip_list = []
24     f = open(res,r)
25     for line in f:
26         url = "http://freeapi.ipip.net/%s" %line.strip()
27         ip_addr = urllib.urlopen(url).read()
28         time.sleep(0.25)
29         ip_list.append(ip_addr)
30     f.flush()
31     #print len(ip_list)
32     return ip_list
33 
34 def ip_city(ip_file):
35     ip_list = []
36     city_list = []
37     temp =check_ipaddr(check_url,ip_file)
38     f = open(ip_file,r)
39     for i in f:
40         line = i.strip().split(\n)
41         for i in line:
42             ip_list.append(i)
43             #f.flush()
44     for line in temp:
45         city_list.append(line)
46     for i in range(len(ip_list)):
47         l =i+1
48         time.sleep(0.07)
49         print "%s)"%l,ip_list[i],"\t"+"("+ city_list[i] +")"
50     
51     f.flush
52     return ip_city
53 
54 if __name__ == "__main__":
55     if len(sys.argv) >1:
56         ip_city(sys.argv[1])
57     else:
58         print "\033[31;5mPlease pass a file....\033[0m"

 

批量查询ip地址归属地

标签:please   ...   str   for   span   read   lib   int   main   

原文地址:http://www.cnblogs.com/zl-py/p/6212331.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!