日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

正方教务系统——用Postman优雅的选课

發布時間:2024/3/12 windows 68 豆豆
生活随笔 收集整理的這篇文章主要介紹了 正方教务系统——用Postman优雅的选课 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.引言

由于每個學期開學都要在學校的土豆服務器上進行搶課大戰(總搶不到),我對學校的教務系統(正方教務系統V-8.1.3)早已深惡痛絕,因此,去年用python模擬登陸(selenium)寫了個網課撿漏的腳本(當有同學退課時,由于腳本一直運行,因此可以迅速選上)。本以為這學期我的腳本就可以大展身手,哪知道今年學校突然說改變選課方案,改為分年級分時段選課只允許選課不允許退課,這就代表了,我的撿漏腳本被宣判死刑了。

但只要思想不滑坡,方法總比困難多,經過我的不懈努力,最終成功實現如下效果:

  • 當只允許高年級選課時,低年級可突破限制,與高年級一同選課
  • 突破不允許退課限制,自由退課

二.前提條件

  • 有一個可以正常進行通識選修課選課的賬號A

  • 有一個可以進行主修課選課,但不允許選修課選課的賬號B(簡易版教程需要,進階版教程不需要)

    ps:限制還是挺多的,但是事實上只要知道了選修課對應的xkkz_id,就可以直接通過Postman為所欲為了

  • 三.使用到的工具

    • Postman
    • Chrome瀏覽器
    • 高年級的賬號(允許進行網課選取的賬號)
    • 低年級的賬號(不允許進行網課選取的賬號)
    • 正方教務系統選課接口文檔說明

    四.教程

    簡易版

    1.登陸高年級賬號,進入選課界面,點擊通識選修課

    2.F12打開開發者工具,復制xkkz_id的value值

    3.登錄低年級賬號,進入選課界面,F12打開開發者工具,將代碼中的xkkz_id的value值替換為上面復制的值

    4.將kklxdm的value值改為10

    5.將njdm_id的value值改為 允許進行選課的年級,如現在允許2019級進行選課,則改為2019

    在本示例中,由于高年級賬號為2019級的,因此將njdm_id改為2019

    6.回到頁面,點擊搜索鍵,發現出現的課程為通識選修課,且可以正常進行選課

    進階版

    1.同簡易版一樣,登陸高年級賬號先把xkkz_id的值復制了,后面會用到

    2.登錄低年級賬號,進入選課界面,F12進入開發者工具,點擊Network,刷新界面,找到含Cookie的請求,查看Cookie,復制JESSIONID值

    3.打開Postman,新建Post請求用于搜索課程,具體如下:

    請求地址:

    https://XXXXX/xsxk/zzxkyzb_cxZzxkYzbPartDisplay.html

    請求頭:

    JSESSIONID為第二步復制的值

    Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    請求參數

    變量名值(示例)注釋是否必須
    xkxnm2021當前學期年份如2021-2022 即2021?
    xkxqm12定值?
    kklxdm1001為主修課 10為選修課?
    kspage1頁號?
    jspage10一頁顯示的數量?
    filter_list[0]XXX搜索的課程名稱

    效果如下:

    4.找到要選擇的課程,復制其kch_id

    5.新建請求,用于顯示課程具體信息,具體參數如下:

    請求地址:

    https://XXXXX/xsxk/zzxkyzbjk_cxJxbWithKchZzxkYzb.html

    請求頭:

    JSESSIONID為第二步復制的值

    Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    請求參數

    變量名值(示例)注釋是否必須
    bklx_id0定值?
    njdm_id2019年級代碼(允許正常選課的年級)?
    xkxnm2021當前學期年份如2021-2022 即2021?
    xkxqm12定值?
    kklxdm1010為選修課01為主修課?
    kch_idXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX課程號(第四步復制的)?
    xkkz_idD824D824D824D824D824D824D824D824第一步復制的值?

    效果如下:

    6.復制do_jxb_id

    7.新建請求,用于進行選課,具體參數如下:

    請求地址:

    https://XXXXX/xsxk/zzxkyzbjk_xkBcZyZzxkYzb.html

    請求頭:

    JSESSIONID為第二步復制的值

    Cookie:JSESSIONID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    請求參數

    變量名值(示例)注釋是否必須
    jxb_ids7cad8a50a08b2c9…(共257個字符)教學班號(動態刷新) 第六步復制的值?
    kch_idXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX課程號(第四步復制的)?
    qz0定值?

    效果如下:

    若flag==1則表示選課成功


    教程結束,總的流程差不多就是這個樣子,總體而言可玩性非常高,太刑了👀

    我寫了相對更全更完整的正方教務系統的接口文檔說明,已選課程查詢接口和退課接口可移步文檔查看

    文檔地址:正方教務系統選課接口文檔說明

    🎈文檔持續更新中,歡迎Star

    希望對你有幫助,謝謝!

    PS:教程僅供開發交流使用,禁止用于個人盈利!

    總結

    以上是生活随笔為你收集整理的正方教务系统——用Postman优雅的选课的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。