保持校园网自动登录的代码备忘: 基于webdriver和chrome

在跑一个处理很多数据的代码,需要不间断地运行。而且最近打算回家一周,需要远程控制电脑。但是学校的校园网每到晚上就会自己断开,干脆写份脚本来保持校园网的连接

这份简单的代码只包括三个部分,检测网络状态的部分,自动登录校园网的部分,循环执行的部分、

复制代码
import os
import time
import socket
from selenium import webdriver
from selenium.webdriver.common.by import By
 
#向网页发送请求来检查网络连接
def check_internet():
    try:
        socket.create_connection(("www.baidu.com", 80))
        return 1
    except OSError:
        return 0


#使用webdriver驱动模拟打开校园网网站并登录
def register():
    driver = webdriver.Chrome()
    driver.get("https://p2.nju.edu.cn/")
    user_name_='校园网账户'
    password_='校园网密码'
    time.sleep(10)
    driver.find_element(By.NAME,'username').send_keys(user_name_)
    time.sleep(1)
    driver.find_element(By.NAME,'password').send_keys(password_)
    time.sleep(1)
    driver.find_element(By.ID,'loginBtn').click()
    time.sleep(10)



#创建一个持续的循环,开始每隔10分钟检测一次网络,检测断网则开始自动连接
while True:
    try:
        flag=''
        print('Checking internet connection.........')
        flag=check_internet()
        if flag == 0:
            print('Internet unconnected---------Opening the website')
            register()
            print('Success!')
            time.sleep(600)        
            continue
        else:
            print('Internet is connected now')
            time.sleep(600)
            continue
    except:
        print('Error')
        time.sleep(600)
        continue
复制代码

chrome的chrome driver来自Chrome for Testing availability (googlechromelabs.github.io)

需要首先查看chrome的版本,通过chrome://version/命令来在chrome浏览器中查看

posted @   Victooor_swd  阅读(42)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示