웹 소스 긁어오기

<?
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/'));
?>

첨부파일

open_url.php (867 bytes) 62회 2012-09-04 13:37
|

댓글 14개

크롤러인가요?
사람을 지칭하시는건가요 아니면 기능의 역할을 지칭하시는건가요? ㅎㅎ
올려두고 물어보신다면 ;;
구글에서 크롤러를 검색해보세요 :)
기능이 비슷한지 해서 물어본 내용입니다.
기능은 웹사이트 코드를 긁어오는 것이니 당연히 비슷하죠.
이 코드를 수정해서 크롤러로 사용이 가능할수도 있겠지만, 저는 그런 의도로 올린건 아닙니다.
그리고 '크롤러'라고 하셔서 '크롤링 하는 사람'을 지칭하셨던 것인지
'크롤러 기능'을 지칭한 것인지를 여쭌것이지요 :D
어떻게 사용하는건가요~?
제가 만든 open_url 함수를 추가하시고 호출하시면 됩니다.
반환값은 긁어오기에 성공하면 header와 body를 인덱스로 갖는 배열이 반환되고, 실패시엔 아무것도 반환되지 않습니다.
header 에는 http 헤더가, body에는 http 내용이 들어갑니다
때론 유용하게 사용되겠네요 ^^
감사합니다~ ^^
소스만 가지고오는
네 웹소스 긁어오는 프로그램입니다 ^^
파싱이..스누피도 있고..^^;;
중요한건 소스를 어떻게 컨트롤하느냐겠지요ㅎㅎㅎ
태그 날리는것도 한몫할것이고..
한마디로 정규식을 배워야 요것을 매우 유용하게 사용할수있을것이다..이런거지요
맞는 말씀이지요 ㅎㅎ
좋은 소스네요 ㅋㅋ
유용한 정보 감사합니다
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
13년 전 조회 1,842
13년 전 조회 2,254
13년 전 조회 1,811
13년 전 조회 1,858
13년 전 조회 2,212
13년 전 조회 1,986
13년 전 조회 2,607
13년 전 조회 2,056
13년 전 조회 1,603
13년 전 조회 2,210
13년 전 조회 5,541
13년 전 조회 1,892
13년 전 조회 2,409
13년 전 조회 4,020
13년 전 조회 2,613
13년 전 조회 2,969
13년 전 조회 2,586
13년 전 조회 3,248
13년 전 조회 2,668
13년 전 조회 2,253
13년 전 조회 1,720
13년 전 조회 1.5만
13년 전 조회 2,507
13년 전 조회 4,633
13년 전 조회 2,280
13년 전 조회 1,733
13년 전 조회 1,885
13년 전 조회 1,719
13년 전 조회 1,892
13년 전 조회 5,654
13년 전 조회 7,422
13년 전 조회 2,135
13년 전 조회 6,001
13년 전 조회 2,254
13년 전 조회 1,818
13년 전 조회 1,971
13년 전 조회 1,791
13년 전 조회 1,709
13년 전 조회 1,949
13년 전 조회 2,043
13년 전 조회 1,776
13년 전 조회 1,829
13년 전 조회 2,270
13년 전 조회 8,855
13년 전 조회 4,050
13년 전 조회 1,753
13년 전 조회 2,326
13년 전 조회 2,259
13년 전 조회 2,359
13년 전 조회 6,282
13년 전 조회 1,752
13년 전 조회 2,250
13년 전 조회 3,723
13년 전 조회 3,346
13년 전 조회 2,998
13년 전 조회 3,184
13년 전 조회 4,114
13년 전 조회 1,766
13년 전 조회 3,290
13년 전 조회 2,485
13년 전 조회 4,436
13년 전 조회 4,523
13년 전 조회 2,261
13년 전 조회 5,334
13년 전 조회 2,411
13년 전 조회 2,591
13년 전 조회 3,037
13년 전 조회 2,997
13년 전 조회 2,051
13년 전 조회 2,243
13년 전 조회 4,152
13년 전 조회 2,205
13년 전 조회 2,710
13년 전 조회 3,531
13년 전 조회 3,304
13년 전 조회 2,031
13년 전 조회 2,690
13년 전 조회 4,986
13년 전 조회 2,317
13년 전 조회 2,762
13년 전 조회 2,257
13년 전 조회 2,463
13년 전 조회 2,935
13년 전 조회 1,999
13년 전 조회 2,937
13년 전 조회 2,579
13년 전 조회 2,125
13년 전 조회 1.1만
13년 전 조회 2,244
13년 전 조회 2,085
13년 전 조회 2,208
13년 전 조회 2,921
13년 전 조회 2,305
13년 전 조회 2,396
13년 전 조회 2,051
13년 전 조회 1,900
13년 전 조회 6,047
13년 전 조회 2,309
13년 전 조회 2,372
13년 전 조회 2,156