웹 콘텐츠를 캡처하기 위해 php를 올바르게 구현하는 방법은 무엇입니까? 이 문제는 오랫동안 PHP 언어에 노출되지 않은 친구들에게는 다소 어려운 문제입니다. 오늘은 케케지아에서 구체적인 솔루션을 소개해드리겠습니다. 먼저 Cwindows의 php.ini에서 Extension=php_curl.dll 함수를 켜고 apapche를 다시 시작했습니다. 다음은 바이두에서 웹 콘텐츠 캡처와 PHP 캡처를 위해 작성한 PHP입니다. 🎜> < ?php // 컬 초기화 $ch = cur_init () 또는 die (curl_error()); echo "Test it"; //URL 매개변수 설정 컬_setopt($ch,CURLOPT_URL,"http: //http://www.baidu.com/s?wd=php"); / /CURL 필요 데이터 반환 cur_setopt($ch,CURLOPT_RETURNTRANSFER,1); //요청 실행 $result = curl_exec($ch) or die (curl_error()); //반환된 결과를 얻어서 표시 echo $result; echo cur_error($ch); //CURL 닫기 cur_close($ch); ?> 웹 콘텐츠를 크롤링한 후 PHP가 응답하지 않는 이유는 무엇입니까? 테스트 텍스트가 없습니다. 첫 번째 줄에 echo "test"를 넣으면 출력될 수 있습니다. 확인해보세요. 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 "Beijing".$qx[1].""; echo $wd[1];*/ //echo "< img src='http://news.163.com/ img/logo/".$qximg_[0]."'> < img src='http://news.163.com /img/logo/".$qximg_[1]."'>"; ?> PHP 크롤링 웹 콘텐츠의 다음 예는 컬링 함수를 통해 163일 일기예보를 얻는 것입니다 php.ini( ;extension=php_curl.dll )에서 이전(;)을 제거하고 저장합니다. php_curl.dll, libeay32.dll, ssleay32를 입력합니다. .dll c:windowssystem32에 복사하고 IIS를 다시 시작합니다. $ch = curl_init() 또는 die(curl_error() ); //URL 매개변수 설정 curl_setopt($ch,CURLOPT_URL,"http: //http://www.163 .com/weatherxml/54511.xml"); //데이터를 반환하려면 CURL 필요 컬_setopt($ch,CURLOPT_RETURNTRANSFER,1 ); //요청 실행 $result = curl_exec($ch) 또는 die (curl_error()); //반환된 결과를 가져와서 표시 / /echo $result; // echo cur_error($ch); $qx=explode(""",strstr($ result,"qx=")); $wd=explode(""",strstr($result,"wd=")); $qximg=explode(""",strstr($result,"qximg =")); $qximg_=explode(",",$qximg[1 ]); 에코 "베이징". $qx[1]."< br />"; echo $wd [1]; //CURL 닫기 curl_close($ch); ?> 위의 PHP 크롤링 웹 콘텐츠 학습을 통해 직접 실습해 보고 이해도도 깊어질 수 있습니다. 관련 정보: http://www.kokojia.com/s64/ |