校园网自动pppoe拨号+Web认证

本文介绍了如何使用Python和批处理脚本实现校园网的自动pppoe拨号和Web认证。通过分析网络请求,构造Python代码模拟HTTP POST提交登录信息,再结合批处理脚本完成整个流程,包括处理认证后的网页弹窗问题。最后,给出了将脚本加入Cortana、开机启动和计划任务的方法。
摘要由CSDN通过智能技术生成

所需环境python(用于http.post,也可用其他工具代替)

1.自动pppoe拨号

新建bat文件连接pppoe.bat,输入以下内容:

RASDIAL 宽带连接 username passwd

其中,宽带连接是pppoe的名称,usernamepasswd是上网的账号和密码。
然后新建bat文件断开pppoe.bat,输入以下内容:

rasdial 宽带连接 /DISCONNECT

2.自动进行Web认证

首先使用chrome打开Web认证页面,以本校为例,打开网页http://10.6.8.2:904,按F12或右键-检查,进入Network选项卡:
这里写图片描述
在Web认证页中点击登陆,就可以捕获本机发出的http请求,我只抓到一个包,如果有多个需要自己筛选找到post账号密码的包。
这里写图片描述
分析抓到的包,主要关注General,Request Headers和Form Data。
这里写图片描述
这里写图片描述
一边分析抓到的包,一边构造python代码,新建python文件auto-login.py:

import requests
import time

class INST(object):
    def __init__(self, username, password):
        pass
    def _get_page(self):
        pass
    def _login(self, request):
        pass

因为抓包显示用到了cookie,因此我们在_get_page()方法中,利用session保存会话,然后在_login()方法中将登陆请求post给服务器。

  • 构造 __init__():
def __init__(self, username, password):
    self.username = username
    self.password = password
    self.UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.167 Safari/537.36'

    request = self._get_page()
    for i in range(5):
        if request.status_code != 200:
            time.sleep(2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值