ウェブページのダウンロード

PHP:
ウェブページのダウンロード

How to

<?php
$url = "https://example.com"; // ダウンロードしたいウェブページのURL
$ch = curl_init($url); // cURLセッションを初期化

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 結果を文字列として返す
$output = curl_exec($ch); // ウェブページの内容を$outputに保存

if ($output === false) {
    echo 'Error: ' . curl_error($ch);
} else {
    echo htmlspecialchars($output); // ウェブページの内容を安全に表示
}

curl_close($ch); // cURLセッションを閉じる
?>

サンプル出力 (実際のHTMLはサイトによる):

<!DOCTYPE html>
<html>
<head>
    <title>Example Domain</title>
</head>
<body>
    <h1>Example Domain</h1>
    <p>This domain is for use in illustrative examples in documents.</p>
</body>
</html>

Deep Dive

最初に curl は1980年代後半に開発された。PHPでは cURL ライブラリを使用し、より簡単にウェブページをダウンロードできます。file_get_contents() のような他の関数もありますが、cURL はHTTPリクエストのオプションが多く、より複雑なタスクに向いています。CURLOPT_RETURNTRANSFERtrue に設定することで、結果を直接ブラウザに出力する代わりに変数に保存します。この方法はAPIからデータを引っ張るのにもよく使用されます。

また、ウェブスクレイピングには法的な問題が伴う場合があるため、ダウンロードする際はウェブサイトの利用規約を確認することが大切です。

See Also