php의 simplexml을 이용한 네이버 인기검색어

불당   
   조회 16470   추천 0     비추천 0    

popular.skin.php (2.2K), Down : 4, 2012-06

네이버 인기검색어를 달려고 만들었습니다.
PHP의 파서도 많지만, simple은 대부분 설치하는 추세라서 simplexml을 이용했는데, 코드 아주 간결 합니다.
네이버 인기글을 simplexml로 파싱한거는 처음인 듯...
 
하루에 5천번 이상쓰면 차단 될 수 있으니, db_cache 기능을 이용해서 조횟수를 줄으면 됩니다.
 
                echo db_cache("main_top_naver_cache", 300, "naver_popular('naver_popular', 4)");
 
 
<?php
if (!defined('_GNUBOARD_')) exit;
// 네이버 인기검색어
function naver_popular($skin_dir="basic", $rows=10, $options="") {
    global $g4;
    if ($skin_dir)
        $popular_skin_path = "$g4[path]/skin/popular/$skin_dir";
    else
        $popular_skin_path = "$g4[path]/skin/popular/basic";
    $rows = (int) $rows;
   
    // 네이버는 10개만 나오니까
    if ($rows > 10 || $rows < 0) $rows = 10;
    $npop = array();
    for ($i=0; $i<$rows;$i++) {
        $k = $i + 1;
        $j = "R" . $k;
        $item = $xml->item->$j;
        $k = $npop[$i]['K'] = iconv("UTF-8", $g4[charset], $item->K);
        $npop[$i]['S'] = iconv("UTF-8", $g4[charset], $item->S);
        $npop[$i]['V'] = (int) $item->V;
        $npop[$i]['LINK'] = "http://search.naver.com/search.naver?where=nexearch&query=" . urlencode($k) . "&sm=top_lve";
    }
    ob_start();
    include "$popular_skin_path/popular.skin.php";
    $content = ob_get_contents();
    ob_end_clean();
    return $content;
}
?>
 
 
- opencode.co.kr -
불당 2012-06
오픈코드의 우측 상단에 예제가 있습니다.
db_cache를 쓰면 아무리 트래픽 많은 사이트도 5천개의 쿼리로 충분합니다.


제목Page 6/28
2012-07   16357   불당
2012-07   15950   불당
2012-07   15841   불당
2012-07   13289   불당
2012-07   17463   불당
2012-07   15272   불당
2012-07   15905   불당
2012-07   16439   불당
2012-07   27221   불당
2012-06   16459   불당
2012-06   16673   불당
2012-06   16869   불당
2012-06   16471   불당
2012-06   20714   불당
2012-06   19613   불당
2012-06   15834   불당
2012-06   14592   불당
2012-06   15575   불당
2012-06   14403   불당
2012-06   9521   불당