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.