自动学习校内安全学习课程
本文最后更新于 240 天前,其中的信息可能已经有所发展或是发生改变。

1. 说明

某校要求学生进入实验室前需要在线学习实验室安全知识 12 小时,再考试,网站每间隔五分钟需要手动点击确定,而此确定按钮是使用 window.confirm() + alert产生,其会停止当前页面,所以不能使用 js 来控制按钮,索性写个 python 代码挂在我的树莓派上,挂一夜就能考试答题了。使用整个网站都是校内内网架设,所以程序只能在校园网下运行呦。程序要求 python3,以及需要安装 requests, beautifulsoup4,安装命令如下:

pip install requests==2.18.4 beautifulsoup4==4.6.0

程序思路和过程以后闲了再更新吧,下载见 #4.代码下载(我有写了两个版本一个是直接运行的脚本,一个是命令行运行,详细见代码readme),直接运行的版本使用很简单,修改自己的账号,在程序一开始的 userData。例如我的 userData:

userData = {
    'xuehao': '1704310334',
    'password': '123456',
    'postflag': '1',
    'cmd': 'login',
    'role': '0',
    '%CC%E1%BD%BB': '%B5%C7%C2%BC'
}

如果出现错误:error code:{}, 可能加密参数发生了变化,参数获取方法见说明,有问题请联系,此时需要重新获取参数,详细见下,如果不懂,加我QQ1415615232。

2. 加密参数获取

加密参数自获取方法(谷歌浏览器为例):

  1. 打开网址,右击网页选择“检查”打开开发者工具,(如 figure 1)

    1555594692533
    figure 1

  2. 点开发者工具的 “Network”,再勾选上 “Preserve log”,(如 figure 2)

    1555594856564
    figure 2

  3. 正常登陆自己账号,登陆之后在开发者工具 “Network” 下找到,exam_login.php (如figure 3),单击后得到详细信息,向下翻到“Form Data” (如figure 4),再点击绿框的 “view URL encoded”,得到加密参数,(如figure 5)

    1555594998852
    figure 3

    1555595334651
    figure 4

    1555595369522
    figure 5

  4. 将上面获取的参加替换到 userData,即可。

3. 效果

经过一夜测试,程序蛮稳定。效果图:

1555641476695

4. 代码下载

本校同学可以找我代挂。代码下载见评论区压缩包。

评论

  1. root 博主
    2年前
    2019-4-18 22:16:59
    • root 博主
      2年前
      2019-4-18 23:05:35

      目前超时等待时间是3s(代码中 timeout),超过3s就会停止访问并返回错误。我刚测试发现这个时间太短,建议更改为10s…

    • root 博主
      2年前
      2019-4-19 10:53:04

      超时时间已修改为10s

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇