wgetを使用して、独自のリダイレクトディレクトリから必要な数のファイルをダウンロードしてください。

wgetを使用して、独自のリダイレクトディレクトリから必要な数のファイルをダウンロードしてください。

大学のウェブサイトから多数のPDFファイルをダウンロードするには、wgetを使用する必要があります(すべてのファイルを収集して整理することは不可能ではありませんが、退屈です)。リンクは次のとおりです。

http://example.edu/path_to_directory/directory/foobar.pdf

次のコマンドを使用しています。

wget -mk --no-check-certificate --load-cookies cookies.txt  http://example.edu/arbitrary_link_to_directory/directory/

残念ながら、PDFを含む実際のディレクトリはそれぞれエラーページにリダイレクトされ、私が取得するのはhtmlファイルとcssファイルです。

http://example.edu/path_to_directory/directory/

ブラウザで次にリダイレクトされます。

http://example.edu/path_to_directory/error/error.html

wgetを使用して問題のすべてのファイルをダウンロードできますか?

ベストアンサー1

Webサイトから複数のファイルをダウンロードするのが簡単ではない(または積極的に困難になる)場合は、次のファイルURLのリストを生成します。

lynx -dump -listonly $URL | awk '/\.pdf/ {print $2}' > /tmp/pdflist.txt

その後、通常ファイルを編集してviダウンロードしたくないアイテムを削除し、最後にwgetを使用してすべてのアイテムをインポートします。

wget --input-file=/tmp/pdflist.txt

これは単純な作業にうまく機能し、通常は中程度の困難な作業には十分です...しかし、複雑なHTMLを解析し、リンク(Cookieを使用することができます)に従うことに関連する困難な作業の場合は、このモジュールを使用してWebボット(別名)perlを作成します。libwww-perl軽量水圧)。

おすすめ記事