컴퓨터 PC/php/html/css

스누피클래스 웹페이지 원하는 값 불러오기

[플립] 2016. 5. 3. 12:34
반응형



Snoopy Class는 간단하지만 막강한 기능을 가지고 있네요.

내가 원하는 웹페이지에 그 무엇이든 다 긁어올 수 있느니... 강력하다 하겠죠?


오늘은 주식 현재가 소스를 불러와 보도록 하겠습니다.


먼저 스누피 클래스를 다운받아 올려야 겠죠??


다운로드 : http://sourceforge.net/projects/snoopy/files/latest/download


소스한번 보겠습니다.


<?php


include_once 'Snoopy.class.php';

$snoopy=new snoopy;

$o="";

$snoopy->fetch("http://stock.daum.net/item/main.daum?code=002200");

$txt=$snoopy->results;

$rex="/\<em class=\"curPrice.+\"\>(.*)\<\/em\>/";

preg_match_all($rex,$txt,$o);

print_r($o[0][0]);


?>


참조 : http://investor-js.blogspot.kr/2013/07/php.html?showComment=1461441372661 블로그님꺼



그럼 결과는


12,350


이렇게 나오네요. 이탤릭체로 나왔다는건 아마두 문자열로 인식을 하는거 같습니다.

그래서 전 숫자열로 변환을 시도 해 봅니다.


함수를 하나 만들죠


<?php

function conv_num ( $num )

{

  $number = (int)str_replace(',', '', $num);

  return $number;

}

?>


그리고 아래처럼 숫자로 변환을 합니다.


<?php

$price = $o[1][0];

$nowprice = conv_num($price);

?>


<?php echo number_format($nowprice);?>


그럼 결과는


12,350


제가 원하는 정확한 숫자값으로 추출이 잘 되었네요.


$snoopy->fetch("http://stock.daum.net/item/main.daum?code=002200");

위 code 부분만 수식을 넣어서 게시판 같은곳에 사용하면 편리 하겠죠?




반응형