期末試験の準備のために、学習プラットフォーム「超星」の資料をダウンロードする必要がありましたが、ダウンロード権限が制限されていました。この記事では、ブラウザの開発者ツールを利用して、この制限を回避する方法を紹介します。
方法1:URLパラメータの直接操作(失敗)
最初に試したのは、ダウンロードリンクのURLを直接操作する方法です。ダウンロードボタンを右クリックしてリンクアドレスをコピーし、パラメータを変更してアクセスしてみました。
http://example.com/coursedata/downloadData?materialId=569366097&classId=62296733&cpi=150527609&courseId=228090361&ut=
ここで、materialId を他の章のID(例:第六章)に変更すると、「ダウンロード権限がありません」というメッセージが表示され、この方法は失敗に終わりました。
方法2:HTML要素の操作による「保存到云盘」の有効化(成功)
次に、ブラウザの「要素を調査」機能を利用して、HTML構造を直接操作することを試みました。
有効な「保存到云盘」ボタンを右クリックし、要素を調査すると、以下のようなJavaScript関数呼び出しが見つかりました。
toOpen('第7章_監査会.pptx', 'pptx', 569366097, '', 'a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7', '', 2, 1, '62296733', 'd129172616b815e6e0057b0194a31fe8', '', '1675342276173')
この関数の引数の中で、ファイルID(569366097)と一意のハッシュ値('a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7')が重要なパラメータであると判断しました。
次に、制限されている第六章のHTMLを調査しました。ここでは「保存到云盘」ボタンが表示されておらず、対応する <li> 要素が欠けていることがわかりました。
そこで、有効な第七章の <li> 要素をコピーし、第六章のHTMLの <ul> リスト内に手動で追加しました。この際、ファイル名やIDを第六章のものに置き換えました。
<li onclick="operate_copy_cloud_disk('第5章_監査会.pptx', 'pptx', 559998636, '', '12ca88b9c44851cc935096b04814d69d', '', 2, 1, '62296733', 'd129172616b815e6e0057b0194a31fe8', '', '1675342276173')"></li>
この操作により、第六章にも「保存到云盘」ボタンが表示され、クリックすると資料が正常に保存され、モバイルアプリの云盘で確認できるようになりました。
発生した問題と解決策
「保存到云盘」ボタンをクリックすると、PowerPointファイルがポップアップして画面を覆ってしまう問題が発生しました。これもブラウザの開発者ツールで対応しました。ポップアップを制御しているHTML要素を特定し、それを削除することで、ポップアップが表示されなくなりました。