1. Halo Guest, pastikan Anda selalu menaati peraturan forum sebelum mengirimkan post atau thread baru.

Share Script Baca Alexa Rank

Discussion in 'Pemrograman Web' started by xrvel, Jul 22, 2010.

Tags:
  1. xrvel

    xrvel Super Hero

    Joined:
    Oct 21, 2007
    Messages:
    2,873
    Likes Received:
    947
    Location:
    Di sini
    Ini ada script simple utk baca alexa rank sebuah website (beserta nilai reviewnya dll)

    File pertama, save sbg "cari_info.class.php"
    PHP:
    <?php
    // By Xrvel
    class cari_info {
        var 
    $curl_handle false;

        function 
    cari_info() {
        }

        function 
    my_curl_get($url$read_info false) {
            
    $ssl false;
            if (
    preg_match('/^https/i'$url)) {
                
    $ssl true;
            }
            
    $ch $this->curl_handle;
            if (
    $ssl) {
                
    curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
            }
            
    curl_setopt($chCURLOPT_URL$url);
            
    curl_setopt($chCURLOPT_REFERER$url);
            
    $res curl_exec($ch);
            if (
    $read_info == true) {
                
    $info curl_getinfo($ch);
            } else {
                
    $info false;
            }
            unset(
    $ch);
            return array(
                
    'response' => trim($res),
                
    'info' => $info
            
    );
        }

        function 
    my_curl_init() {
            
    $this->curl_handle curl_init();
            
    curl_setopt($this->curl_handleCURLOPT_RETURNTRANSFERtrue);
            
    curl_setopt($this->curl_handleCURLOPT_AUTOREFERERtrue);
            @
    curl_setopt($this->curl_handleCURLOPT_FOLLOWLOCATIONtrue);
            
    curl_setopt($this->curl_handleCURLOPT_MAXREDIRS2);
            @
    curl_setopt($this->curl_handleCURLOPT_CONNECTTIMEOUT15);
            @
    curl_setopt($this->curl_handleCURLOPT_TIMEOUT35);
            
    curl_setopt($this->curl_handleCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
        }

        function 
    my_curl_post($url$post_data) {
            
    $ssl false;
            if (
    preg_match('/^https/i'$url)) {
                
    $ssl true;
            }
            
    $ch $this->curl_handle;
            if (
    $ssl) {
                
    curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
            }
            
    curl_setopt($chCURLOPT_URL$url);
            
    curl_setopt($chCURLOPT_REFERER$url);
            
    curl_setopt($chCURLOPT_POST1);
            
    curl_setopt($chCURLOPT_POSTFIELDS$post_data);
            
    $res curl_exec($ch);
            
    //$info = curl_getinfo($ch);
            
    $info false;
            unset(
    $ch);
            return array(
                
    'response' => trim($res),
                
    'info' => $info
            
    );
        }

        function 
    read_alexa_info($url) {
            
    $return_data = array(
                
    'rank' => 0,
                
    'backlink' => 0,
                
    'review_avg' => 0,
                
    'review_num' => 0
            
    );
            
    $url "http://data.alexa.com/data?cli=10&dat=s&url=$url";

            
    $this->my_curl_init();
            
    $data $this->my_curl_get($url);
            
    curl_close($this->curl_handle);

            if (
    preg_match('#<POPULARITY URL="(.*?)" TEXT="([0-9]+){1,}"/>#si'$data['response'], $p)) {
                
    $value = ($p[2]) ? $p[2] : 0;
                
    $return_data['rank'] = $value;
            }
            if (
    preg_match('/\<linksin num\=\"([0-9]+)\"\/\>/i'$data['response'], $match)) {
                
    $return_data['backlink'] = $match[1];
            }
            if (
    preg_match('/\<reviews avg\=\"([0-9\.]+)\" num\=\"([0-9]+)\"\/\>/i'$data['response'], $match)) {
                
    $return_data['review_avg'] = $match[1];
                
    $return_data['review_num'] = $match[2];
            }
            return 
    $return_data;
        }
    }
    ?>

    Yang ini file kedua, save ke nama apa aja
    PHP:
    <?php
    require_once('cari_info.class.php');
    $cari_info = new cari_info();

    $url 'detik.com';

    $info $cari_info->read_alexa_info($url);

    $rank_alexa $info['rank'];
    $backlink_alexa $info['backlink'];
    $review_alexa $info['review_avg'];

    echo 
    '<p>Rank Alexa = '.$rank_alexa.'</p>';
    echo 
    '<p>Backlink Alexa = '.$backlink_alexa.'</p>';
    echo 
    '<p>Review Alexa = '.$review_alexa.'</p>';
    ?>

    Silakan dicoba :gembira:
     
  2. polisi langit

    polisi langit Hero

    Joined:
    Nov 12, 2009
    Messages:
    521
    Likes Received:
    36
    :swt: terus cara pasangnya dan kegunaan uniknya apa gan apa cuma baca tok maaf nubie belom mudeng
     
  3. xrvel

    xrvel Super Hero

    Joined:
    Oct 21, 2007
    Messages:
    2,873
    Likes Received:
    947
    Location:
    Di sini
    Ya namanya aja share, :lol:
    Mungkin bisa buat widget pengecek alexa rank via image, dll..
    Atau buat belajar cURL? :p
     
  4. otactecno

    otactecno Guest

    wah..gt yak cranya...
    ...
    .............................................................
     
  5. paspas

    paspas Newbie

    Joined:
    Jan 17, 2010
    Messages:
    28
    Likes Received:
    0
    Itu berarti dari alexanya ngrim balik data bentuk XML ya gan ?

    tengkiu gannnnnn... nambah ilmu lagi nih di adsense-id :D

    tengkiu tengkiu...
     

Share This Page