JavaScript:
ウェブページのダウンロード
How to: (やり方)
JavaScriptでウェブページをダウンロードする一番の方法は、fetch
関数を使うことです。以下が簡単な例です。
// Node.jsの場合
const fetch = require('node-fetch');
async function downloadPage(url) {
try {
const response = await fetch(url);
const pageBody = await response.text();
console.log(pageBody);
} catch (error) {
console.error('Download failed:', error);
}
}
downloadPage('https://example.com'); // ここにダウンロードしたいウェブページのURLを入れます
次は出力の一部です。
<!doctype html>
<html>
...
</html>
Deep Dive (深掘り)
ウェブページのダウンロードは、古くからウェブ開発の基本機能です。古い方法には、XMLHttpRequestやiframeの使用がありましたが、現在はfetch
APIが標準でこれに取って代わっています。fetch
はプロミスを返し、より現代的な非同期制御を提供します。他にも、Axios
やGot
などのサードパーティのライブラリがあり、追加の機能や簡単なAPIを提供しています。ただし、これらを使うには追加のセットアップが必要です。
適切なエラーハンドリングが重要であり、特にネットワーク問題やHTTP応答コードを見落とさないよう気をつけましょう。また、大量のダウンロードを実行する場合は、ウェブサイトの利用規約を確認し、レートリミットやロボット排除標準に従う必要があります。
See Also (参照)
- MDN Web Docsの
fetch
API: Fetch API node-fetch
ライブラリ: node-fetch- JavaScript非同期処理の詳細: Asynchronous programming
Axios
ライブラリ: Axios on GitHub- レートリミットとロボット排除標準について: Robots exclusion standard