using text file to get ip address from hostname
Dan Katorza
dkatorza at gmail.com
Wed Sep 19 04:50:47 EDT 2012
בתאריך יום רביעי, 19 בספטמבר 2012 11:14:29 UTC+3, מאת Chris Angelico:
> On Wed, Sep 19, 2012 at 5:41 PM, Dan Katorza <dkatorza at gmail.com> wrote:
>
> >
>
> > Hello again,
>
> > I have another question and i hope you will understand me..
>
> > Is there any option where you can set the program to go back to lets say the top of the code?
>
> > I mean if the program finished the operation and i want to stay in the program and go back ro the start.
>
> > after any operation i want the option to do it again , go back to the main menu or full exit from the program, and i want it every time.
>
> >
>
> > i hope i'm clear :)
>
>
>
> Yep! Look up the docs and tutorial on "control flow" and "looping
>
> constructs". Sounds like what you want here is a 'while' loop.
>
>
>
> ChrisA
Hi Chris,
this is my code:
#!/usr/bin/env python
#Get the IP Address
import sys, socket
print ("\n\n#########################################################")
print ("# Get IP from Host v 1.0 #")
print ("#########################################################")
print ("# Choose from the options below #")
print ("# 1- url , 2-File(Text file only.txt) #")
print ("#########################################################\n")
mchoice = int(raw_input("Please enter your choice> "))
while mchoice !=1 and mchoice !=2:
print("{0} is not a menu option.".format(mchoice))
mchoice = int(raw_input("Please try again> "))
if mchoice == 2:
filename = raw_input("Hello, please enter file name here> ")
if filename.endswith(".txt"):
try:
infile = open(filename)
except EnvironmentError as e:
print(e)
sys.exit(1)
print("\nFile {0} exists!".format(filename))
print("\nGetting IP addresses for hosts")
print("\n")
else:
print("{0} is not a Text file.".format(filename))
sys.exit(1)
for line in infile:
hostname = line.strip()
try:
ip_address = socket.gethostbyname(hostname)
except EnvironmentError as e:
print("Couldn't find IP address for {0}: {1}".format(hostname, e))
continue
print("IP address for {0} is {1}.".format(hostname, ip_address))
else:
print ("\nFinished the operation")
if mchoice == 1:
murl = raw_input("Enter URL here> ")
try:
print("Checking URL...")
ip_address = socket.gethostbyname(murl)
except EnvironmentError as d:
print(d)
sys.exit(1)
print("Valid URL")
print("\nIP address for {0} is {1}.".format(murl, ip_address))
print ("\nFinished the operation")
=====================================================================
now where it says Finsihed the operation i want it to show (another search /main menu/exit program)
i know about the while loop , but forgive me i just don't have a clue how to use it for this situation.
i don't want you to give me the code:) just the idea.
i did read the section about the while loop but still i do not know how to use it in this situation.
thanks.
More information about the Python-list
mailing list