Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- #-*- coding:utf-8 -*-
- import re
- def is_a(domain):
- """递归直到获取到A记录IP"""
- if a_dict.has_key(domain):
- return a_dict[domain]
- else:
- return is_a(cname_dict[domain])
- def handle(records):
- '''A记录和CNAME记录分为2个字典'''
- for line in records:
- record = re.split('\s',line.strip())
- if record[1].lower() == 'a':
- a_dict[record[0].lower()] = a_dict.get(record[0].lower(),[])
- a_dict[record[0].lower()].append(record[2])
- domain_list.append(record[0].lower())
- elif record[1].lower() == 'cname':
- cname_dict[record[0].lower()] = record[2].lower()
- domain_list.append(record[0].lower())
- domain_list.append(record[0].lower())
- domain_set = set(domain_list) #建立一个唯一域名集合(去重)
- for i in domain_set:
- domain_dict[i] = domain_dict.get(i,is_a(i))
- print domain_dict
- a_dict = {}
- cname_dict = {}
- domain_dict = {}
- domain_list = []
- records = open('record.txt','r')
- handle(records)
- records.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement