4

Pythonスクリプトでアクティブなインターネット接続を確認し、インターネット接続がある場合は実行を続行します。接続がない場合は、チェックを続けます。基本的に、スクリプトが再接続できるようになるまで、「main()」での実行をブロックします。

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

1 に答える 1

8

絶対に再帰的にしないでください。代わりにループを使用します。

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()
于 2012-05-15T21:55:32.640 に答える