Reputation: 2702
I want my python script to check for an active internet connection and if there is one then continue with the execution. If there is NO connection then continue checking. Basically block the execution in "main()" until the script can reconnect.
python
import urllib2
def main():
#the script stuff
def internet_on():
try:
response=urllib2.urlopen('http://74.125.113.99',timeout=1)
main()
except urllib2.URLError:
internet_on()
Upvotes: 4
Views: 15386
Reputation: 500357
Definitely don't do it recursively. Use a loop instead:
def wait_for_internet_connection():
while True:
try:
response = urllib2.urlopen('http://74.125.113.99',timeout=1)
return
except urllib2.URLError:
pass
def main():
...
wait_for_internet_connection()
main()
Upvotes: 10