私はさまざまなwgetコマンド(man wget)の使い方を学んでいます。しかし、特定のWebサイトから特定のファイルをダウンロードする方法(Webサイト全体からダウンロードする方法)を学ぶのに問題があります。一部のサイトでは他のサイトにアクセスできますが、アクセスできません。
たとえば、なぜこのウェブサイトのファイルで同じ操作を実行できないのですか?
https://www.ictsd.org/sites/default/files/review/bridgesweekly22-35a_0.pdf
wget -r -nd -A pdf --accept-regex "review/.*\.pdf" 'https://www.ictsd.org/sites/default/files/'
実際、「ファイル」フォルダとそのサブフォルダからすべてのPDFファイルをダウンロードしようとしています。
ただし、ダウンロードをファイル/説明フォルダに制限することもあります。できません。また、このサイトからすべてのPDFファイルをダウンロードしようとしましたが、ダウンロードできませんでした(他のサイトでは可能です)。どんな提案がありますか? 「man wget」を照会するだけでなく、どこでより多くの情報を入手できますか?
答え1
wget
複数のファイルをインポートするには、指定したディレクトリにそのファイルを見つけることができる必要があります。つまり、https://www.ictsd.org/sites/default/files/review/
Webブラウザを閲覧するときは、そこからPDFへのリンクを見ることができるはずです。リンクがブラウザに表示されると、経由でも表示されますwget
。
Firefox でナビゲートすると、https://www.ictsd.org/sites/default/files/review/
次のエラー メッセージでタイムアウトが発生します。
The page isn’t redirecting properly
wget
ディレクトリに移動しても利用可能なファイルのインデックスが提供されないため、予想される内容は表示されません。
ただし、アドレスに特定のpdfのフルパスを入力すると、Firefoxはそのwget
パスを見つけます。
ウェブサイトの所有者がすべてのファイルを一度に自動的に検索するのを防ぐために、意図的にこれを行うと推測できます。一方、これが単にWebサービスのバグだと思っていて、探しているファイルを含むディレクトリに表示する必要があると言う場合は、その機関に連絡して問題を知らせることができます。
または、すべてのPDFにリンクする他のインデックスがある場合は、次のことを実行できます。可能それを使用してください。
必要な特定のPDFの名前を事前に知っている場合は、すべてのリンクをファイルに配置してwget
次のように読み取ることができます。
wget -i links.txt