中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php怎么實現自動刷題

發布時間:2021-12-20 11:04:33 來源:億速云 閱讀:203 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關php怎么實現自動刷題的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

                           

使用php實現課工場自動刷題

大體思路

  • 前臺獲取所有題目并做好標記

  • 后臺記錄答案

  • 從后臺獲取答案并自動填寫

實現原理

php怎么實現自動刷題
首先可以發現所有題目都是圖片, 但是url都有一個共同點, 那就是imageType=2
那么直接上代碼【推薦學習:《PHP視頻教程》】

php怎么實現自動刷題

得到所有圖片地址后發送到后臺, 后臺將收到所有圖片的url地址

php怎么實現自動刷題

這是一部分源碼, 關于這個getQuestionIdFromImageUrl待會再說
然后新建一個數據庫, 我這里是建了一個名叫kgc_cheater的數據庫
以及表question_answers
如下是表結構

php怎么實現自動刷題

以及使用Medoo/Medoo庫用作數據庫鏈接

然后寫一個從數據庫拿答案的邏輯

php怎么實現自動刷題

php怎么實現自動刷題

你們可能會好奇maps是什么, 因為前臺圖片地址的運算是和后臺不一樣的
給你們看一下getQuestionIdFromImageUrl你們也許能明白

php怎么實現自動刷題

因為發現每個用戶的圖片地址都不相同, 即使題目是一樣的, 但是每個賬號圖片地址都不會變, 那么說明圖片地址的計算是有規律的, 研究半天發現, 其實就是把relativePath參數用/分割后的把第二個部分減去指定偏移值, 待會說明如何獲取
我們直接向后臺請求答案, 返回maps和answers參數

php怎么實現自動刷題

maps的定義其實就是$url => $question_id
answers的定義是['question_id' => $question_id, 'answer' => $answer]

php怎么實現自動刷題

如圖, 使用3個parent然后進入ul.sec2獲取答案列表, 然后找到包含答案的元素并模擬點擊它
這樣就完成了一次自動答題

回到上面, 關于偏移值的獲取, 在你登錄進去的時候看你的url

php怎么實現自動刷題

559634 就是你的偏移值, 進入答題頁面
這是圖片的源地址 https://tiku.kgc.cn/testing/cdn/getImage?relativePath=0069000/1543312740097/e19f21615ab8e9866619bf47c3b5b59c.jpg&imageType=2

獲取原圖片id為 0069000/1543312740097
使用偏移值減去第二個參數得到1543312180463

最終得到題目id: 0069000/1543312180463
其他賬號經實驗也能得到相同id, 然后這是存到數據庫里的實際id

在進入主頁面的時候我有一個腳本記錄這個
使用cookies保存
附上代碼

php怎么實現自動刷題

在解析界面有正確答案

php怎么實現自動刷題

每個部分都用 .sec.post 包起來了
然后往下取 .sec2 再取 img 并獲取url
可以得到圖片id, 同樣取relativePath但是不需要應用偏移值了, 直接存進數據庫即可
同樣的, 答案在 .sec3 往下 .pad10 再往下 em:eq(0)
直接這樣取

php怎么實現自動刷題

然后發給后端丟到數據庫里記錄起來
并在前臺發送已記錄消息

php怎么實現自動刷題

后端記錄代碼

php怎么實現自動刷題

然后就是前后端配合, 自動記錄題目, 自動答題
最后就是自動刷題
進入一張試卷后, 自動填寫之后加了一段自動更新試卷的代碼, 如圖

php怎么實現自動刷題

關于fuxiAuto后面的那串數字

首先進入

php怎么實現自動刷題

利用開發者工具找到開始測試按鈕

php怎么實現自動刷題

javascript:unitExam(1098001001)
這個1098001001就是科目id
我這里最后一位數字是1到7所以寫了個自動隨機數隨機生成1到7的整數

修改也很簡單

php怎么實現自動刷題

感謝各位的閱讀!關于“php怎么實現自動刷題”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

安西县| 德格县| 凭祥市| 鹤山市| 蒙城县| 天峻县| 崇义县| 玛纳斯县| 涞源县| 武宣县| 东乡| 张家港市| 锡林郭勒盟| 湟中县| 丰城市| 通渭县| 车险| 阿克苏市| 凤台县| 馆陶县| 兴城市| 呼玛县| 漳浦县| 鹤岗市| 长治县| 开江县| 铜鼓县| 新疆| 江津市| 中江县| 南城县| 焦作市| 安平县| 石渠县| 大安市| 肥西县| 鹤庆县| 应用必备| 买车| 东丰县| 鄄城县|