いくつかの小さなゲームを作った後、コードを入力するのは肉体的な作業であり、ゆっくりと完了できることに徐々に気づき始めました。ここ数日、GPA を計算するために学術管理システムへのログインをシミュレートする小さなプログラムを作成したいという衝動に駆られました。しかし、私はネットワークプログラミングの経験がなかったので、中間試験後の4連休を利用して少しずつ穴埋めしてきました。
最近、私はJava言語に訳の分からない思い入れがあります。当初はJavaを使って開発する予定でしたが、ネットワークプログラミングに関してはpythonよりもJavaの方が面倒なようで、またJavaのメソッドの使い方を間違えてしまい、学校の教務システムが誤って動作してしまいました。 SQLインジェクションを実行してIPをブロックしていたと思います(...) それ以来、Pythonで書くことにしました。
cookieは、ログイン後のセッションステータスを記録するために使用されます。
# 保存cookie cj = cookielib.LWPCookieJar() cookie_support = urllib2.HTTPCookieProcessor(cj) opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler) urllib2.install_opener(opener)
まずブラウザを使用して学術管理システムにログインし、コンソールを開いてログイン Web ページに投稿する必要があるメッセージを分析し、実際のリクエスト Web ページを見つけます。
上の 2 つの図の分析から、実際に要求された Web ページを取得できます: 121.251.19.29/pass.asp
ログインのために投稿するために必要なデータは次のとおりです: UserStyle、ユーザー、パスワード、ここでUserStyle はラジオのタイプです。Web ページのソースを参照してください。 コードは、学生、教師、および OtherUser の 3 つのタイプに分かれています。
次に、投稿リクエストを送信します。
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)
正常にログインしたら、オプションをクリックしてスコア クエリを見つけ、要求された Web ページを見つけます: 121.251.19.29/student/asp/Select_Success.asp
要求 Web ページを開いて、スコアページ
req = urllib2.Request('121.251.19.29/student/asp/Select_Success.asp') resData = urllib2.urlopen(req) res = resData.read() # 读取成绩页面
正規表現を使用してすべてのHTMLタグをフィルタリングします。残りのコンテンツは解析されます。得点を表示する表には周期的なパターンがあり、対応する科目の得点と単位を抽出し、最終的に平均点と評定点を計算します。
tag = re.compile('</?[^>]*>') s = re.sub(tag, '', res) # 过滤标签 tmp = s.split()
もちろん、アカウントまたはパスワードが正しく入力されない場合、ログイン要求は失敗し、ユーザーはアカウントとパスワードの再入力を求められます。以下に、テストするクラスメートのアカウントをいくつか見つけました。
最後に、アカウントのログインに成功すると、アカウントのパスワードがメールボックスに送信されます
Pythonの送信シミュレーションの内容は書きません。普通のテキストメール。 。オープンソース: github.com/ly941122/CalGPA
[関連する推奨事項]
1. PHP コレクション、模擬ログイン フォーラム アプレット_PHP チュートリアル
2. WeChat アプレット開発ログイン プロセスの作成手順
3.ミニプログラム開発のためのフォーム検証に関するチュートリアル
4. WeChat ミニプログラムの詳細な説明と最適化以上がGPAを計算するために学務システムへのログインをシミュレートする小さなプログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

WebStorm Mac版
便利なJavaScript開発ツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ホットトピック









