開啟抓包工具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模組正好對我有用,就寫了乙個簡單的測試用例。神奇的發現這一招竟然是管用的。那還等什麼,開刷咯。思路很簡單,...