版权
本文首发于soarli博客
,转载请注明来源。传送门
由于一个细微的逻辑疏忽,导致折腾了半小时左右,问题已经得以解决。
代码
1.0版本
import os
import re
f1 = open('D:/283389.txt',"r")
f2 = open('D:/283389.txt',"r")
line = f1.readline()
subline = 'open'
subline2 = 'filtered'
#line.replace(' ', '')
print('端口状态为open的ip地址:')
while line:
flag = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line)
if (flag!=[]):
ip = flag
if subline in line:
print(ip)
#print(line)
line = f1.readline()
f1.close()
line2 = f2.readline()
print('端口状态为filtered的ip地址:')
while line2:
flag = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line2)
if (flag!=[]):
ip = flag
if subline2 in line2:
print(ip)
#print(line)
line2 = f2.readline()
f2.close()
2.0版本
import os
import re
filenmae = input("请输入nmap输出文件目录:")
print('')
f1 = open(filenmae,"r")
f2 = open(filenmae,"r")
f3 = open(filenmae,"r")
line = f1.readline()
subline = 'open'
subline2 = 'filtered'
subline3 = 'closed'
#line.replace(' ', '')
print('端口状态为open的ip地址:')
while line:
flag = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line)
if (flag!=[]):
ip = flag
if subline in line:
print(ip[0])
#print(line)
line = f1.readline()
f1.close()
line2 = f2.readline()
print('端口状态为filtered的ip地址:')
while line2:
flag = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line2)
if (flag!=[]):
ip = flag
if subline2 in line2:
print(ip[0])
#print(line)
line2 = f2.readline()
line3 = f3.readline()
print('端口状态为closed的ip地址:')
while line3:
flag = re.findall(r"\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b", line3)
if (flag!=[]):
ip = flag
if subline3 in line3:
print(ip[0])
#print(line)
line3 = f3.readline()
f3.close()
参考文章:
https://www.runoob.com/python/python-reg-expressions.html
https://www.runoob.com/python/python-reg-expressions.html#flags
https://blog.csdn.net/weixin_30437481/article/details/101540482
https://www.runoob.com/python/python-lists.html
http://c.biancheng.net/view/2546.html
https://blog.csdn.net/zhengxiangwen/article/details/55148287
https://blog.csdn.net/quiet_girl/article/details/80113591
https://blog.csdn.net/haoaiqian/article/details/70228177
http://www.mzh.ren/python-5-ways-to-check-string-contains-substring.html