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

불당   
   조회 16722   추천 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   16541   불당
2012-07   16131   불당
2012-07   16040   불당
2012-07   13474   불당
2012-07   17661   불당
2012-07   15481   불당
2012-07   16090   불당
2012-07   16665   불당
2012-07   27536   불당
2012-06   16616   불당
2012-06   16854   불당
2012-06   17056   불당
2012-06   16723   불당
2012-06   20985   불당
2012-06   19900   불당
2012-06   16022   불당
2012-06   14779   불당
2012-06   15770   불당
2012-06   14598   불당
2012-06   9717   불당