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将ip地址转换成整数的方法
Mar 17 Python
python实现提取百度搜索结果的方法
May 19 Python
Python实现好友全头像的拼接实例(推荐)
Jun 24 Python
python实现requests发送/上传多个文件的示例
Jun 04 Python
numpy.ndarray 交换多维数组(矩阵)的行/列方法
Aug 02 Python
使用python3实现操作串口详解
Jan 01 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
Dec 13 Python
利用python画出AUC曲线的实例
Feb 28 Python
python em算法的实现
Oct 03 Python
五分钟学会怎么用python做一个简单的贪吃蛇
Jan 12 Python
详解matplotlib中pyplot和面向对象两种绘图模式之间的关系
Jan 22 Python
python爬虫利用代理池更换IP的方法步骤
Feb 21 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实现javascript的escape和unescape函数
2013/06/29 PHP
Yii入门教程之目录结构、入口文件及路由设置
2014/11/25 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
php文件类型MIME对照表(比较全)
2016/10/07 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
PHP抽象类与接口的区别详解
2019/03/21 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
Wordpress ThickBox 点击图片显示下一张图的修改方法
2010/12/11 Javascript
单击复制文字兼容各浏览器的完美解决方案
2013/07/04 Javascript
php的文件上传入门教程(实例讲解)
2014/04/10 Javascript
JQuery中$.each 和$(selector).each()的区别详解
2015/03/13 Javascript
javascript动态添加删除tabs标签的方法
2015/07/06 Javascript
JS实现列表的响应式排版(推荐)
2016/09/01 Javascript
javascript中href和replace的比较(详解)
2016/11/25 Javascript
简单谈谈关于Angular Cli打包的事
2017/09/05 Javascript
初探js和简单隐藏效果的实例
2017/11/23 Javascript
使用Vue.js 和Chart.js制作绚丽多彩的图表
2019/06/15 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
在vue项目中 实现定义全局变量 全局函数操作
2020/10/26 Javascript
[02:26]2016国际邀请赛8月3日开战 中国军团出征西雅图
2016/08/02 DOTA
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
pygame实现雷电游戏雏形开发
2018/11/20 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
Python对列表的操作知识点详解
2019/08/20 Python
python urllib爬虫模块使用解析
2019/09/05 Python
Python如何定义有默认参数的函数
2020/08/10 Python
美国花布包包品牌:Vera Bradley
2017/08/11 全球购物
美国最流行的男士时尚网站:Touch of Modern
2018/02/05 全球购物
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
机电专业大学生职业规划书范文
2014/02/25 职场文书
弘扬职业精神演讲稿
2014/03/20 职场文书
公司行政专员岗位职责
2014/08/24 职场文书
小学师德师风演讲稿
2014/09/02 职场文书
追悼会答谢词
2015/01/05 职场文书
2015年护士工作总结范文
2015/03/31 职场文书