このプロジェクトについて

これは南京大学の寮利用者向け電気料金監視ツールで、電気料金残高がアプリやウェブサイトでしか確認できず、変化を追跡しにくい問題を解決する。プロジェクトは南京大学の電気料金チャージシステムに自動ログインするPythonスクリプトを提供し、従来型CAPTCHA(ddddocr OCR)とスライダー認証(captcha-recognizer AI認識)の両方式に対応する。現在の認証タイプを自動検出し、複数回のリトライも行う。取得した残量はJSONおよびCSVファイルとして保存され、同時に過去の電気使用量変化グラフも生成される。 プロジェクトはGitHub Actionsに統合済みで、リポジトリのSecretsにNJU_USERNAMEとNJU_PASSWORDを設定すれば定期自動実行でき、ローカルデプロイは不要。ワークフローは残量がしきい値を下回った場合のメール通知に対応し、しきい値はconfig_workflow.jsonで調整可能。例えば通常通知200度、重要通知10度、緊急通知5度など。 ローカル実行にはPython 3.9+、Chromeブラウザ、ChromeDriverが必要で、バッチファイルからワンクリックで監視または可視化ウェブパネルを起動できる。ウェブパネルはズーム、ドラッグ、ホバー表示が可能なインタラクティブな電気使用量曲線とデータテーブルを提供し、デスクトップとモバイルの両方に対応する。プロジェクトには環境テスト、ページ構造デバッグ、CAPTCHA認識テストなどの補助ツールも含まれ、PIL互換性、ChromeDriverバージョン不一致、OCR認識失敗などのよくある問題に対するトラブルシューティングも用意されている。