スクリプトで curl または wget を使用してルーターにアクセスし、インターネットを無効にする方法を教えてください。

スクリプトで curl または wget を使用してルーターにアクセスし、インターネットを無効にする方法を教えてください。

curl または wget を使用してルーター ページのフォームにアクセスし、何らかのシェル スクリプト/curl コマンドを実行して TV サービスを切り替えることができるようにしたいと考えています。

コマンドラインで-u username:passwordを使用して認証を通過することができました。

/index.cgi?page=サービス&セッションid=X6dRAsbOxWh9sc9llfGngL9lH4rQOsA>

(sessionid パラメータと -u なしで試してみましたが、動作しました)

HTML コントロールを設定できるところまで来ましたが、どこかの保存ボタンが JavaScript を呼び出しています。オプション ボタンの名前が「services」で、値が 0 または 1 になることはわかっていますが、値を送信するために FormSubmit('butt2') を呼び出す方法がわかりません。クッキー ジャーを初期化することはできますが、値セットと正しいパラメータ 'butt2' を使用してスクリプトを実行すると、かなり近づいたように見えます。

助けてください

絶望的な父親

答え1

あなたがすべきことはないページを読み込み、フォームに入力して送信します。ただし、代わりに、通常フォームを手動で送信する場合と同じ場所に同じデータを直接送信するだけです。

そのページの JS を見ると、ある時点で form.submit または URL への ajax 送信が実行されます。必要なのは、フォームと同じ URL に同じデータを直接 POST することですが、代わりに CURL/WGET を使用します。

その方法と、送信する必要があるデータを確認する方法を説明する回答をいくつか示します。

関連情報