ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して Web コンテンツをクロールするテクニックをすぐに理解する
Web コンテンツをキャプチャするために php を正しく実装するにはどうすればよいですか? この問題は、長い間 PHP 言語に触れたことのない友人にとっては少し難しいです。 Kekejie今日は具体的な解決策をご紹介します。 まず、Cwindows の php.ini で extension=php_curl.dll 関数をオンにして、apapche を再起動しました。以下は、Web コンテンツをキャプチャし、Baidu で PHP 情報をキャプチャするために作成した PHP です。 Parameters curl_setopt($ch,CURLOPT_URL,"http://www.baidu.com/s?wd=php"); //データを返すにはCURLが必要 curl_setopt ($ch,CURLOPT_RETURTRANSFER,1); //リクエストを実行 $result =curl_exec($ch) or die (curl_error()); //返された結果を取得し、表示してください echo $result; echocurl_error($ch); //CURLを閉じる curl_close($ch); ?> しかし、なぜ PHP が Web コンテンツを取得した後に応答がないのでしょうか? 最初の行に echo "test;" を入力すると、curl_init() 関数が実行されていない可能性があります。まだ! PHP の phpinfo() に CURL 拡張機能がサポートされているかどうかを確認してください php_curl.dll を c:windows および c:windowssystem32 にコピーして、Apache を再起動して再試行してください それはファイルではありませんphp_curl.dll。php ディレクトリの libeay32.dll と ssleay32.dll を c:windowssystem32 にコピーし、サーバーのセキュリティのため、allow_url_fopen をオフにします。 サーバーallow_url_fopen = Offの場合、file_get_contentsはONに設定されている場合のみ使用できます。 < ?php /* $getstr=file_get_contents("http://www.163.com/weatherxml/54511.xml"); $qx=explode(""",strstr($getstr,"qx=")); $wd=explode(""",strstr($getstr,"wd=")); $qximg=explode(""",strstr($getstr,"qximg=")); $qximg_=explode(",",$qximg[1]); echo "北京".$qx[1].""; echo $wd[1];*/ //echo " ?> 次の PHP クローリング Web コンテンツの例は、curl_init 関数を通じて 163 の天気予報を取得することです php.ini ( ;extension=php_curl.dll の前の (;) を削除します) ) を保存して php_curl.dll、libay32.dll、ssleay32.dll を c:windowssystem32 にコピーし、IIS を再起動します < ?php
$ch =curl _init( ) or die (curl_error()); //URLパラメータを設定 curl_setopt($ch,CURLOPT_URL,"http://www.163.com/weatherxml/54511.xml" ); //CURLにデータを返すようリクエスト curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //リクエストを実行 $result =curl_exec( $ ch) またはdie (curl_error()); //返された結果を取得して表示 //echo $result; // echocurl_error($ch); $qx=explode (""",strstr($result,"qx=")); $wd=explode(""",strstr($result,"wd=")); $qximg=explode (""",strstr($result,"qximg=")); $qximg_=explode(",",$qximg[1]); echo "北京". $qx[1 ]."< br />"; echo $wd[1]; //CURLを閉じる curl_close($ch); ?> ; Web コンテンツをクローリングする PHP の上記の学習を通じて、自分で実践し、理解を深めることができます。詳細な関連情報: http://www.kokojia.com/s64/ |