Ich Programmier mir grade eine Portscanner, damit ich Zukunft was zum vorzeigen habe, wenn ich mich bewerben möchte.
Es Soll möglich sein eine Ip zu scannen oder auch eine Ip - range.
ich habe eine Entry Box für die IP. Diese wird überprüft und in dies Format gebracht:
Code: Alles auswählen
ip = [[12], [168], [1, 5], [15, 30]]
Ich habe mich an eine sinnvolle auswertung dran gemacht, aber ich denke das ist zu kompliziert.
Code: Alles auswählen
def main():
ip = [[1, 12], [1, 168], [10], [15]]
if len(ip[0]) == 2:
for sub0 in range(ip[0][0], ip[0][1]+1):
if len(ip[1]) == 2:
for sub1 in range(ip[1][0], ip[1][1]+1):
if len(ip[2]) == 2:
for sub2 in range(ip[2][0], ip[2][1]+1):
if len(ip[3]) == 2:
for i in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, i)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub2 in ip[2]:
if len(ip[3]) == 2:
for sub3 in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, sub3)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub1 in ip[1]:
if len(ip[2]) == 2:
for sub2 in range(ip[2][0], ip[2][1]+1):
if len(ip[3]) == 2:
for i in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, i)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub2 in ip[2]:
if len(ip[3]) == 2:
for sub3 in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, sub3)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub0 in ip[0]:
if len(ip[1]) == 2:
for sub1 in range(ip[1][0], ip[1][1]+1):
if len(ip[2]) == 2:
for sub2 in range(ip[2][0], ip[2][1]+1):
if len(ip[3]) == 2:
for i in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, i)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub2 in ip[2]:
if len(ip[3]) == 2:
for sub3 in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, sub3)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub1 in ip[1]:
if len(ip[2]) == 2:
for sub2 in range(ip[2][0], ip[2][1]+1):
if len(ip[3]) == 2:
for i in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, i)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
else:
for sub2 in ip[2]:
if len(ip[3]) == 2:
for sub3 in range(ip[3][0], ip[3][1]+1):
print(sub0, sub1, sub2, sub3)
else:
for sub3 in ip[3]:
print(sub0, sub1, sub2, sub3)
if __name__ == '__main__':
main()
wie kann ich das einfacher auswerten? Dabei darf das format von der Variablen IP geändert werden.
MfG
Trayser