複雑な状況を処理するためにwgetを取得しようとしています。デフォルトでは、そのシステムに適したファイル/フォルダのみを許可したいと思います。
https://example.com/top/a-file
https://example.com/top/a-file.ext
https://example.com/top/nested/directory/one.ext
https://example.com/top/another/nested/dir/two?maybe=paramsToo
私は次のパスに従いたくありません。
https://example.com/
https://example.com/a-file
https://example.com/a-file.ext
https://example.com/top/
https://example.com/top/directory/
https://example.com/top/directory/one.ext
https://example.com/top/another/deeply/nested/direct/two?maybe=paramsToo
基本的に私はこれを処理したいと思います。
/top/:file
/top/nested/directory/:file
/top/another/nested/dir/:file
これらの特定のパスを許可します。
また、このパス内では特定のファイル(.html、.js、.css、または拡張子なし)のみを許可したいと思います。
私が試したことは次のとおりです。
wget --no-parent -r -R .zip,.tar,.gz,.jpghttps://example.com/top
この部分は次の場合を除いて機能します。このページが現在評価されている間:
https://example.com/top/nested/directory/one.ext
...ページはここにリンクされています:
https://example.com/top/a-file
... この--no-parent
オプションは親項目に上がることを防ぎます。私が望むオプションは--no-parent
前進することを許可しませんが/top
、現在評価されているページ基準、言うことはできません。
特定のフォルダ/パスを除外する方法はわかっていますが、-X
発生する可能性のあるすべてのパスがわからないので、何を除外するのかわかりません。
だからこれを達成する方法が不思議です。
答え1
リダイレクト方法によって異なります。https://example.com/top/a-file、使ってみましたか?
--max-redirect 0