Skip to content

Instantly share code, notes, and snippets.

@DhavalThkkar
Created January 26, 2017 10:17
Show Gist options
  • Save DhavalThkkar/8be37df62eeaf5bf2b4c514e3077894c to your computer and use it in GitHub Desktop.
Save DhavalThkkar/8be37df62eeaf5bf2b4c514e3077894c to your computer and use it in GitHub Desktop.
new gui with ip fix
# coding: utf-8
# In[ ]:
# In[ ]:
# In[5]:
import nmap
# In[8]:
from tkinter import *
from tkinter import ttk
import socket
# for verifying ip address
def calculate(*args):
try:
str = (domain_name.get())
ip_add = socket.gethostbyname(str)
ip_address.set(ip_add)
ttk.Button(mainframe, text="Next", command=calculate).grid(column=3, row=4)
except socket.gaierror:
ip_address.set("Invalid Web address. Please Enter again!")
ttk.Button(mainframe, text="retry", command=calculate).grid(column=3, row=4)
def next(ip_address):
import subprocess, os, nmap
ip_str = str(ip_address)
nm = nmap.PortScanner()
real_check = nm.scan(ip_address, '22-443')
if real_check['scan'][ip_str]['tcp'] == 25: # Check for port 25 existence on the IP given
if real_check['scan'][ip_str]['tcp'][25]['name'] == 'smtp': # Check for the Port 25 to be smtp and proceed if true
print('True')
else:
print('False')
if real_check['scan'][ip_str]['tcp'][25]['state'] == 'open': # Check for the Port 25 to be open and proceed if true
print('True')
else:
print('False')
else:
print("Not possible")
root = Tk()
root.title("Smtp_telnet")
mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=1)
mainframe.rowconfigure(0, weight=1)
domain_name = StringVar()
ip_address = StringVar()
domain_name_entry = ttk.Entry(mainframe, width=20, textvariable=domain_name)
domain_name_entry.grid(column=2, row=1, sticky=(W, E))
ttk.Label(mainframe, textvariable=ip_address).grid(column=2, row=2, sticky=(W, E))
ttk.Button(mainframe, text="IP", command=calculate).grid(column=3, row=3, sticky=W)
ttk.Label(mainframe, text="Enter Domain name").grid(column=1, row=1, sticky=W)
ttk.Label(mainframe, text="IP address").grid(column=1, row=2, sticky=E)
ttk.Label(mainframe, text="").grid(column=3, row=2, sticky=W)
for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)
domain_name_entry.focus()
root.bind('<Return>', calculate)
root.mainloop()
# In[ ]:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment