ホームページ  >  記事  >  バックエンド開発  >  PHPでWebページのコンテンツを取得する方法

PHPでWebページのコンテンツを取得する方法

怪我咯
怪我咯オリジナル
2017-07-12 14:52:233862ブラウズ

PHP を使用してページのコンテンツをキャプチャすることは、単純なコンテンツ コレクターを作成したり、Web ページからコンテンツの一部を抽出したりするなど、実際の開発で非常に役立ちます。

キャプチャされたコンテンツは 正規表現 を介して処理されます
フィルターするだけです正規表現を使用してフィルタリングする方法については、ここでは紹介しません。興味がある方のために、PHP を使用して Web ページのコンテンツをクロールする一般的な方法をいくつか紹介します。 1.file_get_contents

<?php 
$url = "http://www.jb51.net"; 
$contents = file_get_contents($url); 
//如果出现中文乱码使用下面代码 
//$getcontent = iconv("gb2312", "utf-8",$contents); 
echo $contents; 
?>
2.curl
PHPコード

<?php 
$url = "http://www.jb51.net"; 
$ch = curl_init(); 
$timeout = 5; 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
//在需要用户检测的网页里需要增加下面两行 
//curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 
//curl_setopt($ch, CURLOPT_USERPWD, US_NAME.":".US_PWD); 
$contents = curl_exec($ch); 
curl_close($ch); 
echo $contents; 
?>
3.fopen->fread->fclose
PHPコード、 コードは次のとおりです:

<?php 
$handle = fopen ("http://www.jb51.net", "rb"); 
$contents = ""; 
do { 
$data = fread($handle, 1024); 
if (strlen($data) == 0) { 
break; 
} 
$contents .= $data; 
} while(true); 
fclose ($handle); 
echo $contents; 
?>

注: 1. file_get_contents と fopen を使用する場合は、allow_url_fopen を有効にする必要があります。方法: php.ini を編集し、allow_url_fopen = On に設定します。allow_url_fopen がオフの場合、fopen も file_get_contents もリモート ファイル
を開くことができません。 2.curl を使用するには、curl を有効にするためのスペースが必要です。方法: Windows では php.ini を変更し、extension=php_curl.dll の前のセミコロンを削除し、Linux では ssleay32.dll と libeay32.dll を C:WINDOWSsystem32 にコピーします。curl 拡張機能をインストールする必要があります。

以上がPHPでWebページのコンテンツを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。