Skip to content

Instantly share code, notes, and snippets.

@lasteminista
Created May 12, 2022 09:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lasteminista/f07244a33946cb9145df47c14fc5b458 to your computer and use it in GitHub Desktop.
Save lasteminista/f07244a33946cb9145df47c14fc5b458 to your computer and use it in GitHub Desktop.
Port Scanner Code Snippet 9
import socket
import tkinter as tk
from tkinter import ttk, font, scrolledtext
from ctypes import windll
class App(tk.Tk):
def __init__(self): ...
# Get Target Value
def get_target(self): ...
# Enable Ports Selection
def select_ports(self, v): ...
# Return Selected Ports List
def get_port_list(self):
ports = list()
port_selection = self.var.get()
if port_selection == 1:
ports = self.common_ports
if port_selection == 2 and self.port_list_entry.get() != '':
try:
ports = list(map(int, self.port_list_entry.get().split(',')))
except ValueError:
return False
if port_selection == 3 and self.port_range_entry_1.get().isdigit() and self.port_range_entry_2.get().isdigit():
if self.port_range_entry_1.get() < self.port_range_entry_2.get():
try:
ports = list(range(int(self.port_range_entry_1.get()), int(self.port_range_entry_2.get()) + 1))
except ValueError:
return False
else:
return False
if ports:
valid_ports = all(p in list(range(0, 65535)) for p in ports)
if valid_ports:
return ports
else:
return False
if __name__ == "__main__":
app = App()
windll.shcore.SetProcessDpiAwareness(1)
app.mainloop()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment