南京邮电大学校园网经常掉线怎么办?

南京邮电大学校园网经常掉线怎么办?

答:写一个自动化脚本,自动检测网络连接,断网自动登录。
老板再也不用担心我人在宿舍而实验室的电脑断网了。
废话不多说,直接上干货,代码如下:

#!/usr/bin/env python
# coding=utf-8
import wmi
from selenium import webdriver
import datetime
import time
import requests
import socket
from os import path

def login(username,password):

    print("账号:"+username+"密码"+password)

    try:
        chrome_options = webdriver.ChromeOptions()
        # prefs = {"profile.managed_default_content_settings.images": 2}
        # chrome_options.add_experimental_option("prefs", prefs)
        driver = webdriver.Chrome(chrome_options=chrome_options)
        driver.get(
            "http://p.njupt.edu.cn/a70.htm?wlanuserip=10.163.164.221&wlanacip=10.255.252.150&wlanacname=XL-BRAS-SR8806-X")#根据自己连接的不同校园网设置不同的网址
        time.sleep(3)
        # driver.maximize_window()
        print("账号:" + username + "密码" + password)
        driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[3]").send_keys(username)
        driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[4]").send_keys(password)
        time.sleep(1)
        driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[2]").click()
        time.sleep(2)

        if driver.title == "认证成功页":
            driver.close()
            return True
        else:
            time.sleep(1)
            print("登录失败:账号:" + username + "密码" + password)
            try:
                print("登录失败正在重试")
                driver.find_element_by_xpath("/html/body/div/div/div/div[7]/form/input").click()
                time.sleep(2)
                driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[3]").send_keys(username)
                driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[4]").send_keys(password)
                time.sleep(1)
                driver.find_element_by_xpath("/html/body/div/div/div[2]/div[4]/form/input[2]").click()
                time.sleep(2)
            except Exception as e:
                driver.close()
                return False
            driver.close()
            return True
    except Exception as e:
        try:
            driver.close()
        except Exception as e:
            return False
        return False

def isNetOK(testserver):
    s=socket.socket()
    s.settimeout(3)
    try:
        status = s.connect_ex(testserver)
        if status == 0:
            s.close()
            return True
        else:
            return False
    except Exception as e:
        return False

def isConnected():
    q=('www.baidu.com',443)
    return isNetOK(q)

if __name__ == "__main__":
    username, password = 20220101,123456 #账号密码
    print("启动成功:账号:"+username+"密码"+password)
    while(True):
        now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
        print("现在时间:"+now)
        print("在线状态:" +isConnected().__str__())
        if isConnected()==False:
            login(username,password)
        time.sleep(60)

需要安装谷歌浏览器,并安装python以及上面调用的库,并将此代码文件放入谷歌浏览器安装目录下使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术宅学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值