I need to add the count statement to give urllib access the tuple of urls. urllib needs to be given a different value each time in order to check all the urls. This is the only way I could get the value (web) in urllib to change each time. I tried indenting the count statement and it runs without error but still only makes one pass. 

Thanks

Message: 1
Date: Sun, 20 Nov 2005 22:26:10 -0500
From: Kent Johnson <[EMAIL PROTECTED]>
Subject: Re: [Tutor] Website monitoring program.
Cc: tutor@python.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Adisegna wrote:
> How do I get the counting loop to come back around? It makes one pass
> fine. How do I get it to come back up and go through again?

You have to indent the statement 'count += 1' so it is part of the loop. But you misunderstand the for loop - the count variable is not needed at all. Your variable 'i' will receive each element of urls, one each time through the loop. For a simpler example,

 >>> u = ['a', 'b', 'c']
 >>> for letter in u:
 ...   print letter
 ...
a
b
c

So instead of
count = 0
for i in urls:
   web = urls[count]

you can write simply
for web in urls:

See the Python tutorial for more examples of for loops:
http://docs.python.org/tut/node6.html#SECTION006200000000000000000

Kent

>
> Thanks
>
> ------------------------------
-------------------------
> import urllib, smtplib
>
> urls = ("http://website0.net/imalive.asp ",
>           "http://website1.net/imalive.asp",
>           " http://website2.net/imalive.asp",
>           "http://website3.net/imalive.asp",
>           "http://website4.net/imalive.asp"
> < http://website4.net/imalive.asp%22>,)
>
> count = 0
> for i in urls:
>     web = urls[count]
>
>     for site in urllib.urlopen(web):
>
>         good = "400 Bad Request"
>         bad = "Invalid Hostname"
>         smtpserver = 'mail.authentium.com < http://mail.authentium.com>'
>         RECIPIENTS = ['[EMAIL PROTECTED] <mailto: [EMAIL PROTECTED]>']
>         SENDER = '[EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>'
>         mssg = site
>
>         if good in site:
>             print "OK"
>             text_file = open("test.log", "a")
>             text_file.writelines('sometext : ')
>             text_file.writelines(site)
>             text_file.writelines("\n")
>             text_file.close()
>
>         elif bad in site:
>               print "NOT OK"
>               text_file = open("test.log", "a")
>               text_file.writelines('metro-ams : ')
>               text_file.writelines(site)
>               text_file.writelines("\n")
>               text_file.close()
>               session = smtplib.SMTP(smtpserver)
>               smtpresult = session.sendmail(SENDER, RECIPIENTS, mssg)
>               if smtpresult:
>                         errstr = ""
>                         for recip in smtpresult.keys():
>                             errstr = """Could not delivery mail to: %s
>
>                     Server said: %s
>                     %s
>
>                     %s""" % (recip, smtpresult[recip][0],
> smtpresult[recip][1], errstr)
>                         raise smtplib.SMTPException, errstr
>
>
>         else:
>               text_file = open("test.log", "a")
>               text_file.writelines('Another type of error occurred : ')
>               text_file.writelines(site)
>               text_file.writelines("\n")
>               text_file.close()
> print web
> count +=1
> print count

--
Arthur DiSegna
Network Operations Center
Authentium, Inc.
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to