win10和linux利用curl实现校园网自动登录 您所在的位置:网站首页 如何自动登录校园网 win10和linux利用curl实现校园网自动登录

win10和linux利用curl实现校园网自动登录

2023-08-20 04:05| 来源: 网络整理| 查看: 265

问题来源:一些学校或者企业的网络通常需要连接wifi时在弹出来的登录界面上填写用户名和密码才能连网,比较麻烦,本文用curl编写脚本,在windows10和linux上实现连接wifi时即可上网,并且定时检测网络状态,保持电脑始终联网

用curl写脚本

首先,在win10上,我这里使用谷歌浏览器,保持上网账号为注销状态,连接wifi,弹出上网登录界面,点击F12,接着点Network。 然后在左侧界面填写用户名和密码,点击登录,观察右侧Network界面的变化。 点击login?callback,右侧有一个request url,复制request url 在这里插入图片描述

windows上实现自动运行脚本

在自己的工作路径上新建一个.txt文件,里面的内容是curl+“request url”

curl "request url"

requesr url 换成刚刚自己复制的,保存代码,将.txt脚本改成.ps1格式。 紧接着打开windows的任务计划程序点击创建基本任务 在这里插入图片描述 具体设置见链接

linux上实现自动运行脚本

有两种方法:

第一种方法:用linux contrab工具

先在终端的指定路径新建一个脚本

$sudo nano connect.sh

将上文的curl脚本复制进来,保存并退出,此时在Linux的终端上用以下指令运行脚本,成功联网

$sudo sh ./connect.sh

接下来打开contrab工具

$contrab -e

进入crontab的任务部署文档,里面用于存放需要定时启动的任务 直接跳到文件的最后一行,在后面添加,其中,/usr/connect.sh更换为自己的路径

"10 02 * * * /usr/connect.sh"

crontab任务表的格式如下:

# 注释行 f1 f2 f3 f4 f5 program #开始的行为注释行f1表示分钟周期,范围 (0 - 59)f2 表示小时周期,范围(0-23)f3 表示月份中的日期,范围(1-31)f4 表示月份,范围(1-12)f5 表示星期中的第几天,范围(0-6)从星期日开始计数,也可使用sun,mon,tue,wed,thu,fri,satprogram 表示要执行的程序命令行 关于contrab的更详尽介绍见这篇文章 第二种方法:自己写脚本运行

同样新建一个脚本文件

$sudo nano connect.sh

在里面添加内容(这段代码的意思就是检测是否能连上百度,如果不能就重新curl一下网络)

timeout=5 target=www.baidu.com ret_code=`curl -I -s --connect-timeout $timeout $target -w %{http_code} | tail $ if [ "x$ret_code" = "x200" ]; then else 这一行添加上文写过的curl "request url"代码 fi

在终端运行一下

$sudo sh ./connect.sh

这里遇到一个问题,最开始运行完代码并不能后发现Ping通百度,在终端上直接ping www.baidu.com也失败 分析原因:没有配置DNS服务器 网上有很多在Linux上配置DNS的方法,附上一个



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有