前言

本教程介绍了如何用 Python 自动登录校园网。

源教程地址: https://zhuanlan.zhihu.com/p/370801224 .

操作系统:Windows 10 专业版

参考文档

  1. 自动登录校园网脚本(Python实现)

内容

  1. 打开你的浏览器,在浏览器中输入你自己学校的校园网登录页面的IP,进入如下页面:

  1. 填入你自己的账号和密码(先别点击登录),然后按下 F12 ,按照下图的指示操作:

  1. 点击了登录后:

  1. 发现这一长串的 URL 和我们想要请求的 URL 好像差的太远,但是!如果你多看一眼你会发现在这个 URL 中包含了学号和密码 !(上图打码的地方)。好家伙,居然是直接使用 GET 方式来登录,这意味着我们的账号和密码是直接以明文的形式出现在 URL 中,这是非常危险的做法,很容易暴露账号和密码等信息,所以只有极少的网站会用 GET 请求来做登录功能,但对于我们来说,通过 GET 请求来登录校园网会方便很多。

  2. 如果你学校是像这样用 GET 请求直接登录的,你可以这样试试:

    • 复制那个包含你账号和密码的 URL
    • 断开你的校园网
    • 然后在浏览器地址栏中粘贴你刚刚复制的 URL,然后回车
    • 看看校园网是否正常登录。
  3. 如果可以那就很简单了,4行代码就能搞定(直接用 GET 方式请求这个 URL)

  4. 安装包:

1
pip3 install requests
  1. 编写 Python 脚本 (connect.py):
1
2
3
4
5
import requests

url = '这里填入带有你账号和密码的URL'
response = requests.get(url).status_code
print("状态码{}".format(response))
  1. 运行脚本连接校园网:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$ ping baidu.com
PING baidu.com (39.156.66.10) 56(84) bytes of data.
^C
--- baidu.com ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2040ms

$ ls
公共的 模板 视频 图片 文档 下载 音乐 桌面 connect.py miniconda3 my_code snap temp thinclient_drives
$ python connect.py
状态码200
$ ping baidu.com
PING baidu.com (110.242.68.66) 56(84) bytes of data.
64 bytes from 110.242.68.66 (110.242.68.66): icmp_seq=1 ttl=51 time=27.4 ms
64 bytes from 110.242.68.66 (110.242.68.66): icmp_seq=2 ttl=51 time=27.3 ms
64 bytes from 110.242.68.66 (110.242.68.66): icmp_seq=3 ttl=51 time=27.3 ms
64 bytes from 110.242.68.66 (110.242.68.66): icmp_seq=4 ttl=51 time=27.4 ms
^C
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 27.310/27.350/27.406/0.038 ms
$

结语

第七十八篇博文写完,开心!!!!

今天,也是充满希望的一天。