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 相关文章推荐
python简单实现刷新智联简历
Mar 30 Python
python实现list元素按关键字相加减的方法示例
Jun 09 Python
Python实现的矩阵类实例
Aug 22 Python
python主线程捕获子线程的方法
Jun 17 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 Python
Python使用APScheduler实现定时任务过程解析
Sep 11 Python
Python处理PDF与CDF实例
Feb 26 Python
Python TKinter如何自动关闭主窗口
Feb 26 Python
Python装饰器用法与知识点小结
Mar 09 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
利用python下载scihub成文献为PDF操作
Jul 09 Python
python3环境搭建过程(利用Anaconda+pycharm)完整版
Aug 19 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
php实现的xml操作类
2016/01/15 PHP
JavaScript定义类的几种方式总结
2014/01/06 Javascript
javascript中indexOf技术详解
2015/05/07 Javascript
用Move.js配合创建CSS3动画的入门指引
2015/07/22 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
利用D3.js实现最简单的柱状图示例代码
2016/12/09 Javascript
JavaScript实现经典排序算法之冒泡排序
2016/12/28 Javascript
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
vue和iview实现Scroll 数据无限滚动功能
2019/10/31 Javascript
[07:48]DOTA2上海特级锦标赛主赛事首日RECAP
2016/03/04 DOTA
[49:58]完美世界DOTA2联赛PWL S3 Magma vs DLG 第一场 12.18
2020/12/19 DOTA
Python使用正则匹配实现抓图代码分享
2015/04/02 Python
深入理解Python中字典的键的使用
2015/08/19 Python
Python中super()函数简介及用法分享
2016/07/11 Python
python logging 日志轮转文件不删除问题的解决方法
2016/08/02 Python
python九九乘法表的实例
2017/09/26 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
Laravel+Dingo/Api 自定义响应的实现
2019/02/17 Python
由面试题加深对Django的认识理解
2019/07/19 Python
python gdal安装与简单使用
2019/08/01 Python
Django实现CAS+OAuth2的方法示例
2019/10/30 Python
Selenium Webdriver元素定位的八种常用方式(小结)
2021/01/13 Python
python os.listdir()乱码解决方案
2021/01/31 Python
JOSEPH官网:英国奢侈时尚品牌
2018/01/31 全球购物
Silk Therapeutics官网:清洁、抗衰老护肤品
2020/08/12 全球购物
某公司面试题
2012/03/05 面试题
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
工程部主管岗位职责
2013/11/17 职场文书
租房协议书怎么写
2014/04/10 职场文书
初中信息技术教学计划
2015/01/22 职场文书
高中生个性发展自我评价
2015/03/09 职场文书
2016年校园社会综合治理宣传月活动总结
2016/03/16 职场文书
MybatisPlus EntityWrapper如何自定义SQL
2022/03/22 Java/Android