質問を始める前に、同様の質問が最初のログインを通過するのに役立ったと言いたいです。私の問題は以下のとおりです。
ミラーリングしようとしているウェブサイトがあります。それは私がアカウントを持っているものです。私は wget を選択したツールとして使用しています。curl を試してみましたが、投稿データの送信は簡単ですが、目前のタスクには wget の方が適していることがわかりました。
Web サイトには、リダイレクト先の初期ログイン ページがあります。この後、ウェブサイト上のすべてにアクセスできます。ログインはしばらくするとタイムアウトしますが、それだけです。
以下の wget コマンドを使用して、Cookie を正常に保存し、それらを読み込み、すべての子フォルダーをダウンロードすることができました。ただし、私の問題は、各子が同じログイン ページの index.html を持っていることです。ルート フォルダーに対しては Cookie が正常に機能しているようですが、その下には何もありません。
私が使用したコマンドは次のとおりです。
wget http://site.here.com/users/login --save-cookies cookies.txt --post-data 'email=example@test.com&password=*****&remember_me=1' --keep-session-cookies --delete-after
wget http://site.here.com/ --load-cookies cookies.txt --keep-session-cookies -r -np
ポストデータの変数/ID が異なることに注意してください。それらが何であるかを確認するには、ログイン ページをダウンロードする必要がありました。
次に、remember_me の値を 1 に設定しなかった場合、cookies.txt が異なることに注意してください。
remember_me=1 なし
.here.com TRUE / FALSE numbershere CAKEPHP garbagehere
remember_me=1 の場合
site.here.com FALSE / FALSE numbershere CakeCookie[rememberme] garbage
.here.com TRUE / FALSE numbershere CAKEPHP garbagehere
その結果、前者はログインページのみをダウンロードし、後者はすべての子フォルダーにアクセスし、子フォルダーにはログインのインデックスが含まれているだけです。
私はちょっと立ち往生しており、wget と http の経験は非常に限られています。これを乗り越えるためにあなたは何をしますか?子ごとに Cookie を生成しますか? 子供ごとに手動で Cookie ファイルを作成する代わりに、どのように自動化しますか?
PS: 与えられた回答が反映されている場合、Linux を使用しています。