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命令启动Web服务器实例详解
Feb 23 Python
python数据结构之链表详解
Sep 12 Python
django站点管理详解
Dec 12 Python
pyQt4实现俄罗斯方块游戏
Jun 26 Python
python爬虫之自制英汉字典
Jun 24 Python
python文件选择对话框的操作方法
Jun 27 Python
使用python对多个txt文件中的数据进行筛选的方法
Jul 10 Python
Python实现图片添加文字
Nov 26 Python
django框架基于queryset和双下划线的跨表查询操作详解
Dec 11 Python
python实现五子棋游戏(pygame版)
Jan 19 Python
基于Python生成个性二维码过程详解
Mar 05 Python
Django实现任意文件上传(最简单的方法)
Jun 03 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
环境会对咖啡种植有什么影响
2021/03/03 咖啡文化
提升PHP速度全攻略
2006/10/09 PHP
如何利用php array_multisort函数 对数据库结果进行复杂排序
2013/06/08 PHP
php5.3 不支持 session_register() 此函数已启用的解决方法
2013/11/12 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
jquery $.ajax入门应用一
2008/11/19 Javascript
5款Javascript颜色选择器
2009/10/25 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
JS实现当前页居中分页效果的方法
2015/06/18 Javascript
微信JS接口大全
2016/08/25 Javascript
jQuery表单验证之密码确认
2017/05/22 jQuery
JS动态插入脚本和插入引用外部链接脚本的方法
2018/05/21 Javascript
Vue组件通信的几种实现方法
2019/04/25 Javascript
javascript实现遮罩层动态效果实例
2019/05/14 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
跟老齐学Python之大话题小函数(1)
2014/10/10 Python
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
Python使用logging结合decorator模式实现优化日志输出的方法
2016/04/16 Python
PyQt5每天必学之布局管理
2018/04/19 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
python实现视频分帧效果
2019/05/31 Python
Python坐标线性插值应用实现
2019/11/13 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
Python字符串split及rsplit方法原理详解
2020/06/29 Python
python中如何写类
2020/06/29 Python
荷兰照明、灯具和配件网上商店:dmlights
2019/08/25 全球购物
行政总监岗位职责
2013/12/05 职场文书
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
安全生产一岗双责责任书
2014/07/28 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
2014年导购员工作总结
2014/11/18 职场文书
房地产财务经理岗位职责
2015/04/08 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书
创业计划书之冷饮店
2019/09/27 职场文书
php 原生分页
2021/04/01 PHP