image.png
# encoding: utf-8
import nmap
import os
iptxt = open('ip.txt')
iplist = []
aliveip = []
ipas = []
nm = nmap.PortScanner()
with open ('ip.txt','r') as f:
for line in f:
iplist.append(line.strip('\n'))
def livescan(ip):
a = nm.scan(hosts = ip,arguments = '-sP')
if a['scan']:
return 1
else:
return 2
def portscan(ip,port):
b = nm.scan(ip,port,'sV')
int(port, base=10)
#print(b['scan'][ip]['tcp'][int(port, base=10)]['state'])
if b['scan'][ip]['tcp'][int(port, base=10)]['state'] == 'open':
return 1
else:
return 2
def main():
for i in range(len(iplist)):
ip = iplist[i]
print(ip)
if livescan(ip) == 1:
print(ip)
aliveip.append(ip)
print("存活主机:",aliveip)
file = open('aliveip.txt','w')
for j in range(len(aliveip)):
jIN = aliveip[j]
file.write(jIN+'\n')
port = input("您要get的端口:" )
file = open('port.txt','w')
print("以下ip开启了该端口:\n")
for ipa in aliveip:
ipas.append(ipa)
if portscan(ipa,port) == 1:
print(ipa)
file.write(ipa+'\n')
print(ipas)
if __name__ == '__main__':
main()