python批量处理多DNS多域名的nslookup解析实现


Posted in Python onJune 28, 2020

利用EXCLE生成CSV文档,批量处理nslookup解析。并保存为CSV文档,方便进行查看:

输入文档格式:

data\domain.csv

python批量处理多DNS多域名的nslookup解析实现

最终输出文档情况:

data\nlookup.csv

python批量处理多DNS多域名的nslookup解析实现

代码:

# coding=gbk
import subprocess
import csv
 
 
def get_nslookup(domain, dns):
  res = subprocess.Popen("nslookup {0} {1}".format(domain, dns), stdin=subprocess.PIPE,
              stdout=subprocess.PIPE).communicate()[0]
  response = res.decode("gbk")
  res_list = response.split("s:")
  row_nslookup = [domain, dns]
  row_ip = res_list[2].split()[:-1]
  row_nslookup.extend(row_ip)
  return row_nslookup
 
 
if __name__ == "__main__":
  file_domain = r'data\domain.csv'    # 输入文件
  file_nslookup = r'data\nslookup.csv'  # 输出文件
  with open(file_domain, 'r', newline='', encoding='gbk') as rf:
    domain_csv = csv.DictReader(rf, dialect=csv.excel)
    domain_list = [row['domain'] for row in domain_csv]
 
  with open(file_domain, 'r', newline='', encoding='gbk') as rf:
    domain_csv = csv.DictReader(rf, dialect=csv.excel)
    dns_list = []
    for row in domain_csv:
      print(row['DNS'])
      if row['DNS'] != '':    # 通常DNS数量少于需要监测的域名数量,做去空处理
        dns_list.append(row['DNS'])
 
  with open(file_nslookup, 'w+', newline='', encoding='gbk') as wf:
    nslookup_csv = csv.writer(wf, dialect=csv.excel)
    header = ['domain', 'DNS', 'nslookup_res...']
    nslookup_csv.writerow(header)
    for domain in domain_list:
      for dns in dns_list:
        print('解析中:域名:{0}___DNS:{1}'.format(domain, dns))
        row_nslookup = get_nslookup(domain, dns)
        nslookup_csv.writerow(row_nslookup)
 
print('执行完毕')

到此这篇关于python批量处理多DNS多域名的nslookup解析实现的文章就介绍到这了,更多相关python 批量多域名nslookup内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
以windows service方式运行Python程序的方法
Jun 03 Python
Python实现获取磁盘剩余空间的2种方法
Jun 07 Python
python通过伪装头部数据抵抗反爬虫的实例
May 07 Python
Django Admin实现三级联动的示例代码(省市区)
Jun 22 Python
转换科学计数法的数值字符串为decimal类型的方法
Jul 16 Python
python多线程并发让两个LED同时亮的方法
Feb 18 Python
Python获取数据库数据并保存在excel表格中的方法
Jun 12 Python
新手学习Python2和Python3中print不同的用法
Jun 09 Python
Python如何进行时间处理
Aug 06 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
Mar 02 Python
python如何读取.mtx文件
Apr 22 Python
python pygame入门教程
Jun 01 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
Jun 28 #Python
Keras: model实现固定部分layer,训练部分layer操作
Jun 28 #Python
sklearn的predict_proba使用说明
Jun 28 #Python
基于python实现ROC曲线绘制广场解析
Jun 28 #Python
Python sklearn中的.fit与.predict的用法说明
Jun 28 #Python
浅谈sklearn中predict与predict_proba区别
Jun 28 #Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 #Python
You might like
destoon实现调用热门关键字的方法
2014/07/15 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
PHP SOCKET编程详解
2015/05/22 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
php 可变函数使用小结
2018/06/12 PHP
javascript下操作css的float属性的特殊写法
2007/08/22 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
使用JS获取当前地理位置方法汇总
2014/12/18 Javascript
jQuery实现友好的轮播图片特效
2015/01/12 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
JS针对浏览器窗口关闭事件的监听方法集锦
2016/06/24 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
2018/08/08 jQuery
Vue插值、表达式、分隔符、指令知识小结
2018/10/12 Javascript
JS实现压缩上传图片base64长度功能
2019/12/03 Javascript
JQuery中DOM节点的操作与访问方法实例分析
2019/12/23 jQuery
JavaScript使用canvas绘制随机验证码
2020/02/17 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
布同自制Python函数帮助查询小工具
2011/03/13 Python
python2.7的编码问题与解决方法
2016/10/04 Python
python3利用smtplib通过qq邮箱发送邮件方法示例
2017/12/03 Python
使用python读取csv文件快速插入数据库的实例
2018/06/21 Python
Python面向对象类的继承实例详解
2018/06/27 Python
Python 给屏幕打印信息加上颜色的实现方法
2019/04/24 Python
python安装requests库的实例代码
2019/06/25 Python
详解python中的生成器、迭代器、闭包、装饰器
2019/08/22 Python
python cookie反爬处理的实现
2020/11/01 Python
英国知名的护肤彩妆与时尚配饰大型综合零售电商:Unineed
2016/11/21 全球购物
Calphalon美国官网:美国顶级锅具品牌
2020/02/05 全球购物
伦敦奥运会口号
2014/06/13 职场文书
2014年妇联工作总结
2014/11/21 职场文书
爱国主义教育基地观后感
2015/06/18 职场文书
总结会主持词
2015/07/02 职场文书
MySQL运行报错:“Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre”解决方法
2022/06/14 MySQL