www.website.com/XYZ の下のリンクをクロールし、www.website.com/ABC の下のリンクのみをダウンロードしたいと思います。
必要なファイルを取得するために、次の wget コマンドを使用しています。
wget -I ABC -r -e robots=off --wait 0.25 http://www.website.com/XYZ
これは、wget 1.13.4 を使用する場合は完璧に動作します。しかし、問題は、wget 1.11 がインストールされているサーバーでこのコマンドを使用する必要があり、同じコマンドを使用すると、次のような追加のドメインがダウンロードされてしまうことです。
www.website.de
www.website.it
...
この問題を回避するにはどうすればいいでしょうか?
--exclude domains=www.website.de,www.website.it
しかし、それらのドメインはダウンロードされ続けました。
--no-parent
また、必要なファイルは上位レベルにあるため、使用できないことにも注意してください(website.com/XYZ の下のリンクをクロールして、website.com/ABC の下のファイルが必要です)。
何かヒントはありますか?
答え1
の反対として--max-redirect 0
または を試すことができます。--domains example.com
--exclude-domains example.com
見る:
-D, --domains=LIST comma-separated list of accepted domains.
--exclude-domains=LIST comma-separated list of rejected domains.
--follow-tags=LIST comma-separated list of followed HTML tags.
--ignore-tags=LIST comma-separated list of ignored HTML tags.
-np, --no-parent don't ascend to the parent directory.
--max-redirect maximum redirections allowed per page.
答え2
これは間違っています:
--exclude domains=www.website.de,www.website.it
正しい方法は次のとおりです。
--exclude-domains www.website.de,www.website.it
wget のマニュアルページから:
--exclude-domains domain-list Specify the domains that are not to be followed.