python實現青馬易站自動刷題

2021-10-24 17:13:20 字數 3567 閱讀 1494

開啟抓包工具httpcanary,登入青馬易站,先答一道題(我選了a)。

抓包結果如下

: 這個填自己的

: 這個填自己的

answer=a&courseid=2&uuid=584fa4568509426d9cce78fe7441c6f0&deviceuuid=

得到url後去瀏覽器中嘗試訪問

得到了這樣的結果,很明顯是user-agent不對,然後更改headers

更改過之後會出現

瀏覽器能夠訪問之後,就可以在python中進行操作了。

獲取題目

data裡面資訊只有courseid,選中的科目不同,courseid會有不同的值

url =

'/yiban-web/stu/nextsubject.jhtml?_={}'

.format

(gettime())

referer =

'/yiban-web/stu/tosubject.jhtml?courseid={}'

.format

(self)

headers =

data =

req = requests.post(url, headers=headers, data=data)

html = json.loads(req.text)

提交答案如果缺少uuid會出現錯誤,在前乙個的包中,能發現它返回了乙個uuid,正好作為回答題目的標識。

data_ =

req_ = requests.post(url_, headers=headers, data=data_)

res_ = json.loads(req_.text)

注意url後邊接了乙個時間戳,如果缺少會出現錯誤。

import requests

import time

import json

# 獲取時間戳

defgettime()

: t =

str(time.time())

a =str(t[0:

10]) b =

str(t[11:

14]) res = a + b

return res

# 核心**

deffunction

(self)

: referer =

'/yiban-web/stu/tosubject.jhtml?courseid={}'

.format

(self)

url_ =

'/yiban-web/stu/changesituation.jhtml?_={}'

.format

(gettime())

url =

'/yiban-web/stu/nextsubject.jhtml?_={}'

.format

(gettime())

headers =

data =

req = requests.post(url, headers=headers, data=data)

html = json.loads(req.text)

# 獲取當前題目的標識

uuid = html[

'data'][

'uuid'

]print

(html[

'data'][

'nextsubject'])

# answer為當前題目提交的答案

data_ =

req_ = requests.post(url_, headers=headers, data=data_)

res_ = json.loads(req_.text)

print

(res_)

if __name__ ==

"__main__":id

=input

("課程的id: "

) function(

id)

,'message'

:'回答錯誤!'

,'issuccess'

: true}

利用Python指令碼實現自動刷網課

人在學校,身不由己。總有一些奇奇怪怪的學習任務,需要我們刷夠一定的時長去完成,但這很多都是不太令人感興趣的文字或是 而這些課都有共同的特點就是會間隔一定時間發出彈窗,確認螢幕前的我們是否還kobkrkpql在瀏覽頁面。每次靠人工去點選,會嚴重影響我們做其他正事的效率。最近小李也需要刷夠一定的學習時長...

python 自動刷伺服器

code python coding utf 8 import cookielib import mechanize import urllib br mechanize.browser cj cookielib.lwpcookiejar br.set cookiejar cj br.open 需要...

Python 自動刷部落格瀏覽量

哈哈,今天的話題有點那什麼了哈。咱們應該秉承學習技術的角度來看,那麼就開始今天的話題吧。今天很偶然的乙個機會,聽到別人在談論現在的 刷量 行為,於是就激發了我的好奇心。然後看了下requests模組正好對我有用,就寫了乙個簡單的測試用例。神奇的發現這一招竟然是管用的。那還等什麼,開刷咯。思路很簡單,...