php で URL に基づいて Web ページのコンテンツを取得するのは非常に便利です。システムの組み込み関数 file_get_contents() を渡して、Web ページのコンテンツなどを返すことができます。 Baidu ホームページのコンテンツを取得するには:
<span style="font-family:Microsoft YaHei;font-size:18px;"><?php$html = file_get_contents('http://www.baidu.com/');echo $html;</span>
<span style="font-family:Microsoft YaHei;font-size:18px;"><?php$html = file_get_contents('http://www.163.com/');echo $html;</span>
このコードは NetEase のホームページの完全なコードを取得できません。現時点では、他のメソッドを考える必要があります。
ここでは、Webページを簡単かつ効果的にキャプチャできるphpのcURLライブラリを紹介します。スクリプトを実行して、クロールした Web ページを分析するだけで、必要なデータをプログラムで取得できます。リンクから部分データを取得する場合でも、XML ファイルを取得してデータベースにインポートする場合でも、単に Web ページのコンテンツを取得する場合でも、cURL は強力な PHP ライブラリです。これを使用するには、まず php 設定ファイルで有効にする必要があります。これを開くときに、Windows でいくつかの DLL が必要になる場合があります。ここでの紹介は信じられませんが、phpinfo() を呼び出すことができます。確認して有効になっている場合は「読み込まれた拡張機能」に表示されます。
以下は、curl を使用して Web ページのコードを取得する簡単な例です:
<span style="font-family:Microsoft YaHei;font-size:18px;"><span style="font-family:SimSun;font-size:24px;"><?php$ch = curl_init();$timeout = 10; // set to zero for no timeoutcurl_setopt ($ch, CURLOPT_URL,'http://www.163.com/');curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); <span style="color:#990000;">curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36');</span>curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);$html = curl_exec($ch);echo $html;</span></span>
このコードを通じて NetEase のホームページのコンテンツを出力できます。ここで赤でマークされたコードがキーです。ブラウザのエージェントがインストールされているため、サーバーはブラウザからアクセスされていると認識し、正しい HTML を返します。