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函数的笔记整理
Apr 07 Python
Python字符串格式化
Jun 15 Python
Python实现的破解字符串找茬游戏算法示例
Sep 25 Python
python利用OpenCV2实现人脸检测
Apr 16 Python
python钉钉机器人运维脚本监控实例
Feb 20 Python
python实现抽奖小程序
Apr 15 Python
python如何获取列表中每个元素的下标位置
Jul 01 Python
在Python中获取操作系统的进程信息
Aug 27 Python
python实现拉普拉斯特征图降维示例
Nov 25 Python
Python语言异常处理测试过程解析
Jan 08 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
Apr 09 Python
Python实现信息管理系统
Jun 05 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
建立动态的WML站点(一)
2006/10/09 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
2014/09/23 PHP
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
Zend Framework动作控制器用法示例
2016/12/09 PHP
php fread函数使用方法总结
2019/05/28 PHP
jquery如何实现锚点链接之间的平滑滚动
2013/12/02 Javascript
判断复选框是否被选中的两种方法
2014/06/04 Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
2015/09/14 Javascript
AngularJS基础 ng-show 指令简单示例
2016/08/03 Javascript
详谈js中window.location.search的用法和作用
2017/02/13 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
JS编写兼容IE6,7,8浏览器无缝自动轮播
2018/10/12 Javascript
vue中将html字符串转换成html后遇到的问题小结
2018/12/10 Javascript
Jquery异步上传文件代码实例
2019/11/13 jQuery
JS实现点击下拉列表文本框中出现对应的网址,点击跳转按钮实现跳转
2019/11/25 Javascript
[01:20]DOTA2上海特级锦标赛现场采访:谁的ID最受青睐
2016/03/25 DOTA
[01:33:14]LGD vs VP Supermajor 败者组决赛 BO3 第二场 6.10
2018/07/04 DOTA
python求crc32值的方法
2014/10/05 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
python中从str中提取元素到list以及将list转换为str的方法
2018/06/26 Python
python 设置输出图像的像素大小方法
2019/07/04 Python
HTML5 CSS3新的WEB标准和浏览器支持
2009/07/16 HTML / CSS
安纳塔拉酒店度假村及水疗官方网站:Anantara Hotel
2016/08/25 全球购物
迪卡侬印度官网:购买所有体育用品
2017/06/24 全球购物
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
上海雨人软件技术开发有限公司测试题
2015/07/14 面试题
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
垃圾分类的活动方案
2014/08/15 职场文书
乡镇领导干部个人对照检查材料思想汇报
2014/09/23 职场文书
有限责任公司股东合作协议书范本
2014/10/30 职场文书
银行稽核岗位职责
2015/04/13 职场文书
药店营业员岗位职责
2015/04/14 职场文书
传单、海报早OUT了,另类传单营销方案送给你!
2019/07/15 职场文书
如何优化vue打包文件过大
2022/04/13 Vue.js