Python用循环检查互联网连接

时间:2016-03-12 10:27:28

标签: python loops web

我试着编写一个简单的脚本,如果没有互联网连接,它会继续迭代。

#!/usr/bin/python3
# -*- coding: utf-8 -*-
import urllib.request, time;

while True:
    try:
        file = urllib.request.urlopen('http://google.com');
        print('Connect');
        break;

    except urllib.error.URLError:
        print('No connect');
        time.sleep(3);

互联网断开时应该继续迭代。但是当我连接到网络时,break表达式不会触发。重要的是,如果有互联网连接,我希望我的脚本打破循环,而不重新启动脚本。

1 个答案:

答案 0 :(得分:0)

我正在使用它:

import requests,time

    def check():
        try:
            requests.get('https://www.google.com/').status_code
            print('online')
            time.sleep(5)
            check_again()
        except:
            print('offline')
            time.sleep(5)
            
    def check_again():
        try:
            requests.get('https://www.google.com/').status_code
            print('online')
            time.sleep(5)
            check()
        except:
            print('offline')
            time.sleep(5)
            check()
    check()