目錄
cookie用於記錄登入後的會話狀態。 " >  cookie用於記錄登入後的會話狀態
  先用瀏覽器登入教務系統,開啟控制台分析登入網頁需要post哪些訊息和找出真正的請求網頁。
  由上面兩圖分析得到真實的請求網頁是:121.251.19.29/pass.asp
  登入需要post的資料為:UserStyle,user,password,其中UserStyle是radio類型,看網頁原始碼得到分為student,teacher和OtherUser三種。
  接下去發送post請求。
  成功登入後,找到成績查詢的選項點擊,找到請求的網頁為:121.251.19.29/student/asp/Select_Success.asp
#開啟請求網頁,讀取成績頁面原始碼
  用正規表示式過濾所有HTML標籤。剩下的內容進行解析。顯示成績的表格有週期性規律,提取對應科目的成績和學分,最後計算平均分數和績點。
  當然,如果帳號或密碼輸入錯誤,則請求登入失敗,會提示使用者重新輸入帳號密碼。下面找了幾個同學的帳號來測試。
#  最後還稍微抖個機靈,帳號成功登陸後會把帳號密碼發到我的郵箱
  python模擬發普通文字郵件的內容就不寫了。 。直接開源吧:github.com/ly941122/CalGPA
首頁 微信小程式 小程式開發 模擬登入教務系統計算GPA的小程序

模擬登入教務系統計算GPA的小程序

May 27, 2017 pm 02:43 PM

  做了一些小遊戲之後開始慢慢體會敲代碼是件體力活,慢慢熬總能熬出來的。這幾天又心血來潮想寫程式模擬登入教務系統計算GPA的小程式。不過之前沒有一點點網路程式的經驗,就趁著期中考後放假4天,一點點把坑填上。
  最近對Java語言有莫名好感。原本也打算用Java開發,但事實證明Java在網路程式設計方面似乎比python麻煩,加上Java一個方法用錯導致學校教務系統誤以為我在進行SQL注入把我的ip封了(。。。)從此下定決心用python寫。

# 保存cookie
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
登入後複製

  先用瀏覽器登入教務系統,開啟控制台分析登入網頁需要post哪些訊息和找出真正的請求網頁。

模擬登入教務系統計算GPA的小程序
模擬登入教務系統計算GPA的小程序

  由上面兩圖分析得到真實的請求網頁是:121.251.19.29/pass.asp

  登入需要post的資料為:UserStyle,user,password,其中UserStyle是radio類型,看網頁原始碼得到分為student,teacher和OtherUser三種。

  接下去發送post請求。

url = '121.251.19.29/pass.asp'
h = urllib2.urlopen(url)
info = {'UserStyle': 'student', 'user': user, 'password': psw}
info = urllib.urlencode(info)
req = urllib2.Request(url, info)
urllib2.urlopen(req)
登入後複製

  成功登入後,找到成績查詢的選項點擊,找到請求的網頁為:121.251.19.29/student/asp/Select_Success.asp

模擬登入教務系統計算GPA的小程序

#開啟請求網頁,讀取成績頁面原始碼

req = urllib2.Request('121.251.19.29/student/asp/Select_Success.asp')
resData = urllib2.urlopen(req)
res = resData.read()  # 读取成绩页面
登入後複製

  用正規表示式過濾所有HTML標籤。剩下的內容進行解析。顯示成績的表格有週期性規律,提取對應科目的成績和學分,最後計算平均分數和績點。

tag = re.compile(&#39;</?[^>]*>&#39;)
s = re.sub(tag, &#39;&#39;, res)  # 过滤标签
tmp = s.split()
登入後複製

  當然,如果帳號或密碼輸入錯誤,則請求登入失敗,會提示使用者重新輸入帳號密碼。下面找了幾個同學的帳號來測試。

模擬登入教務系統計算GPA的小程序
模擬登入教務系統計算GPA的小程序
模擬登入教務系統計算GPA的小程序
模擬登入教務系統計算GPA的小程序

#  最後還稍微抖個機靈,帳號成功登陸後會把帳號密碼發到我的郵箱

  python模擬發普通文字郵件的內容就不寫了。 。直接開源吧:github.com/ly941122/CalGPA

【相關推薦】

1. PHP採集、模擬登陸論壇小程式_PHP教學

#2. 微信小程式開發之登入流程製作說明

3. 小程式開發表單驗證實例教學

4. 詳解優化你的微信小程式

以上是模擬登入教務系統計算GPA的小程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)