python等到连接活动

时间:2012-05-15 21:53:36

标签: python urllib

我希望我的python脚本检查有效的互联网连接,如果有,则继续执行。如果没有连接,则继续检查。基本上阻止“main()”中的执行,直到脚本可以重新连接。

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()

1 个答案:

答案 0 :(得分:6)

绝对不要递归。改为使用循环:

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()