ReSet ORIGINAL
[PHP] 웹 소스 긁어오기 목록
  • 글쓴이 : IN-BEST 작성일 : 12-09-25 02:41 조회 : 8,755
\\ Source Explanation
제가 만든 open_url 함수를 추가하시고 호출하시면 됩니다.
반환값은 긁어오기에 성공하면 header와 body를 인덱스로 갖는 배열이 반환되고, 실패시엔 아무것도 반환되지 않습니다.
header 에는 http 헤더가, body에는 http 내용이 들어갑니다 >>크롤러
Source Code

 
본문<?
function open_url($url)
{
	if (preg_match('/^(https?)\:\/\/([^\/]+)(.*)/', $url, $pregs))
	{
		$host = $pregs[2];
		$port = ($pregs[1] == 'http' ? 80 : 443);
		$suburl = $pregs[3];
		
		if (!$suburl) $suburl = '/';
		
		if ($fp = fsockopen($host, $port, $errno, $errstr, 10))
		{
			fputs($fp, "GET {$suburl} HTTP/1.0\r\n");
			fputs($fp, "Host: {$host}\r\n");
			fputs($fp, "User-Agnet: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1)\r\n");
			fputs($fp, "\r\n");
			
			while (!feof($fp))
			{
				// $temp .= iconv('UTF-8', 'CP949', fgets($fp, 512)); // UTF-8
				$temp .= fgets($fp, 512);
			}
			
			fclose($fp);
			
			$arr = explode("\r\n\r\n", $temp, 2);
			if (count($arr) < 2) return;
			
			return array(
				'header'=>$arr[0],
				'body'=>$arr[1]
			);
		}
	}
}

print_r(open_url('http://sir.co.kr/'));
?> 
· 출처 : 그누4 팁
0.00 (0명)
평가해주세요. 비회원 가능!