Python批量处理多DNS域名nslookup解析脚本
114 浏览量
更新于2024-08-30
收藏 66KB PDF 举报
本文档介绍了一种Python编程方法,用于批量处理多DNS和多域名的nslookup解析。主要目标是通过将输入数据存储在CSV文件中,如"data\domain.csv",然后调用nslookup命令行工具来获取每个域名对应的DNS记录,并将结果整理成CSV格式,保存到另一个文件"data\nslookup.csv"中,便于后续的分析和查看。
首先,作者定义了一个名为`get_nslookup`的函数,该函数接收两个参数:一个域名(domain)和一个DNS服务器地址(dns)。函数内部,它使用`subprocess.Popen`创建一个子进程,执行nslookup命令,查询指定域名在指定DNS上的解析信息。命令的格式是`nslookup {domain} {dns}`,并将输出结果通过`stdout=subprocess.PIPE`获取。获取到的结果被解码为GBK编码,并进行处理以提取关键信息,如域名、DNS服务器以及解析出的IP地址。
在主程序部分,首先读取输入文件"data\domain.csv",使用`csv.DictReader`解析文件内容,提取出每行中的域名。接着,遍历这些域名,如果某一行的DNS字段非空,则将其添加到`dns_list`中。这样,`dns_list`包含了所有需要查询的DNS服务器列表。
接下来,使用`with open(file_nslookup, 'w+', newline='', encoding='')`打开输出文件"data\nslookup.csv",以追加模式写入。使用循环,对每一个DNS服务器和对应的域名进行`get_nslookup`函数的调用,获取解析结果。然后,将查询结果(包括域名、DNS和解析出的IP)作为一个列表存储到每一行的CSV条目中。
最后,将这些数据写入输出文件,确保每行对应一条原始的输入域名及其对应的DNS解析信息。整个过程既实现了批量处理,也便于了数据的管理和分析。
总结来说,这个Python脚本利用了CSV文件作为数据源,通过NSLOOKUP命令行工具高效地批量解析多DNS多域名的DNS记录,并将结果整合为CSV格式,提高了DNS查询的效率和数据管理的便利性。这对于网络管理员或需要频繁查询DNS信息的人员非常实用。
939 浏览量
139 浏览量
点击了解资源详情
175 浏览量
946 浏览量
weixin_38526650
- 粉丝: 1
- 资源: 885
最新资源
- 6502 汇编算法/Log,Exp
- Eclipse+WebLogic下开发J2EE应用程序
- solidworks高级装配体教程
- MTK软件编译过程.doc
- 09研究生考试英语真题
- 46家著名公司笔试题
- 手机电视标准分析与比较
- UNIX常用命令-2小时快速上手
- PL/I Reference Enterprise PL/I for z/OS and OS/390
- .net发送邮件的函数
- java面试知识点总结(接收建议和修改中...)
- ibatis入门ibatis入门
- 浪潮myGS pSeries 产品介绍
- 华为MA5100系统介绍
- Linux菜鸟过关 Linux基础
- NIOSII uClinux 应用开发