NamePros
Welcome, Guest! Ready to make a name for yourself in the domain business? We welcome both the hobbyist and professional domainer to join the discussion as part of the NamePros community.

Click here to create your profile to start earning reputation for posting, and trader ratings for buying & selling in our free e-marketplace. Build your trader rating with each successful sale. Our system has tracked over 100,000 sales and counting!
FAQ & TOS Register Search Today's Posts Mark Forums Read

Go Back   NamePros.com > Website Development Discussion Forums > Programming
Reload this Page [resolved] Get PR + Pages Indexed?

Programming PHP, Perl, Ruby on Rails, AJAX, HTML, XHTML, CSS, JavaScript, MySQL and any other coding topics.

Advanced Search


Closed Thread
 
LinkBack Thread Tools
Old 07-22-2008, 03:30 AM THREAD STARTER               #1 (permalink)
NamePros Regular
Join Date: Aug 2006
Posts: 288
jakeruston will become famous soon enoughjakeruston will become famous soon enough
 



Get PR + Pages Indexed?


Hi,

In my PHP script, I need a way to get the Google PageRank and the number of Pages Indexed on any URL via function. The ones I've found on Google don't seem to work.

Does anyone have any ideas?
jakeruston is offline  
Old 07-22-2008, 04:12 AM   #2 (permalink)
i love automation
 
xrvel's Avatar
Join Date: Nov 2007
Location: xrvel.com
Posts: 1,620
xrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant future
 





You can download free PHP LD and check the pagerank module.
Or you can get PageRank script on PHPClasses.org. You can get number of indexed page script on PHPClasses.org too.
__________________
xrvel is offline  
Old 07-22-2008, 05:19 AM THREAD STARTER               #3 (permalink)
NamePros Regular
Join Date: Aug 2006
Posts: 288
jakeruston will become famous soon enoughjakeruston will become famous soon enough
 



Right I've worked out how to do the PageRank, but I'm having problems with Indexed Pages.

I can get the number with this code:

function yahoo_indexed($uri) {
$yahooAppId1 = "MY ID";
$yahoourl="http://search.yahooapis.com/SiteExplorerService/V1/inlinkData?appid=".$appid."&query=".$uri."&start=1 &domain_only=1&results=1&output=php";
$data = @file_get_contents($yahoourl);
$results=unserialize($data);
return $results['ResultSet']['totalResultsAvailable']; //$results[0][1];
}

It returns the result but it doesn't seem to let me work with the number to add it to other numbers and such.
jakeruston is offline  
Old 07-22-2008, 09:46 PM   #4 (permalink)
i love automation
 
xrvel's Avatar
Join Date: Nov 2007
Location: xrvel.com
Posts: 1,620
xrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant futurexrvel has a brilliant future
 





If "indexed page" is equal with "backlink" (im not sure ), here's the class : (together with PR class, i got it from PHPClasses,org)

"function.class.php"
PHP Code:
<?php
class functions {
    function 
to_int_32 (&$x) {
        
$z hexdec(80000000);
        
$y = (int) $x;
        if(
$y ==- $z && $x <- $z){
         
$y = (int) ((-1) * $x);
         
$y = (-1) * $y;
        }
        
$x $y;
    }  
    function 
zero_fill ($a$b) {
        
$z hexdec(80000000);
        if (
$z $a) {
            
$a = ($a >> 1);
            
$a &= (~$z);
            
$a |= 0x40000000;
            
$a = ($a >> ($b 1));
        } else {
            
$a = ($a >> $b);
        }
        return 
$a;
    }
    function 
mix($a$b$c) {
        
$a -= $b$a -= $c$this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c,13)));
        
$b -= $c$b -= $a$this->to_int_32($b); $b = (int)($b ^ ($a<<8));
        
$c -= $a$c -= $b$this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b,13)));
        
$a -= $b$a -= $c$this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c,12)));
        
$b -= $c$b -= $a$this->to_int_32($b); $b = (int)($b ^ ($a<<16));
        
$c -= $a$c -= $b$this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b,5)));
        
$a -= $b$a -= $c$this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c,3)));
        
$b -= $c$b -= $a$this->to_int_32($b); $b = (int)($b ^ ($a<<10));
        
$c -= $a$c -= $b$this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b,15)));
        return array(
$a,$b,$c);
    }
        function 
checksum ($url$length null$init 0xE6359A60) {
            if (
is_null($length)) {
                
$length sizeof($url);
            }
            
$a $b 0x9E3779B9;
            
$c $init;
            
$k 0;
            
$len $length;
            while(
$len >= 12) {
            
$a += ($url[$k+0] + ($url[$k+1] << 8) + ($url[$k+2] << 16) + ($url[$k+3] << 24));
            
$b += ($url[$k+4] + ($url[$k+5] << 8) + ($url[$k+6] << 16) + ($url[$k+7] << 24));
            
$c += ($url[$k+8] + ($url[$k+9] << 8) + ($url[$k+10] << 16) + ($url[$k+11] << 24));
            
$mix $this->mix($a,$b,$c);
            
$a $mix[0]; $b $mix[1]; $c $mix[2];
            
$k += 12;
            
$len -= 12;
            }
            
$c += $length;
            switch(
$len) {
????: NamePros.com http://www.namepros.com/programming/495405-resolved-get-google-page-ranking-pages.html
                case 
11$c += ($url[$k 10] << 24);
                case 
10$c += ($url[$k 9] << 16);
                case 
9$c += ($url[$k 8] << 8);
                case 
8$b += ($url[$k 7] << 24);
                case 
7$b += ($url[$k 6] << 16);
                case 
6$b += ($url[$k 5] << 8);
                case 
5$b += ($url[$k 4]);
                case 
4$a += ($url[$k 3] << 24);
                case 
3$a += ($url[$k 2] << 16);
                case 
2$a += ($url[$k 1] << 8);
                case 
1$a += ($url[$k 0]);
            }
            
$mix $this->mix($a$b$c);
            return 
$mix[2];
        }
        function 
strord($string) {
            for(
$i 0$i strlen($string); $i++) {
                
$result[$i] = ord($string{$i});
            }
            return 
$result;
        }
        
//
        //
        //
        
function format_number ($number=''$divchar ','$divat 3) {
            
$decimals '';
            
$formatted '';
            if (
strstr($number'.')) {
                
$pieces explode('.'$number);
                
$number $pieces[0];
                
$decimals '.' $pieces[1];
            } else {
                
$number = (string) $number;
            }
            if (
strlen($number) <= $divat)
                return 
$number;
                
$j 0;
            for (
$i strlen($number) - 1$i >= 0$i--) {
                if (
$j == $divat) {
                    
$formatted $divchar $formatted;
                    
$j 0;
                }
                
$formatted $number[$i] . $formatted;
                
$j++;
            }
            return 
$formatted $decimals;
        }
    }
?>
"rank.class.php"
PHP Code:
<?php
require_once(dirname(__FILE__).'/functions.class.php');

class 
rank extends functions {
    var 
$url;
    var 
$pagerank;
    var 
$alexa_rank;
    var 
$backlinks = array('google' => '''yahoo' => '''msn' => '''altavista' => '''alltheweb' => '');
    var 
$dmoz;

    
#start
    
function rank ($url) {
        
$this->url $url;
        
$this->url preg_replace('/http\:\/\//si'''$this->url);
        
$this->pagerank $this->__pagerank();
        
$this->alexa_rank $this->__alexa_rank();
        
$this->backlinks['google'] = $this->__backlinks('google');
        
$this->backlinks['yahoo'] = $this->__backlinks('yahoo');
        
$this->backlinks['msn'] = $this->__backlinks('msn');
        
$this->backlinks['altavista'] = $this->__backlinks('altavista');
        
$this->backlinks['alltheweb'] = $this->__backlinks('alltheweb');
    }
    
    
#pagerank
    
function __pagerank () {
        
$url 'info:' urldecode($this->url);
        
$checksum $this->checksum($this->strord($url));
        
$url 'http://www.google.com/search?client=navclient-auto&ch=6' $checksum '&features=Rank&q=' $url;
        
$v $this->my_curl_crawl($url);
        
preg_match('/Rank_([0-9]+):([0-9]+):([0-9]+)/si'$v$r);
        return (
$r[3]) ? $r[3] : '0';
    }
    
    
#alexa_rank
    
function __alexa_rank () {
        
$url 'http://data.alexa.com/data?cli=10&dat=snbamz&url=' urlencode($this->url);
        
$v $this->my_curl_crawl($url);
        
preg_match('/\<popularity url\="(.*?)" TEXT\="([0-9]+)"\/\>/si'$v$r);
        return (
$r[2]) ? $r[2] : '0';
    }
    
    
#backlinks
    
function __backlinks ($engine) {
        switch (
$engine) {
            
#google
            
case 'google':
                
$url 'http://www.google.com/search?q=link%3A' urlencode($this->url);
                
$v $this->my_curl_crawl($url);
                
preg_match('/of about \<b\>([0-9\,]+)\<\/b\>/si'$v$r);
                return (
$r[1]) ? str_replace(','''$r[1]) : '0';
            break;
            
#yahoo
            
case 'yahoo':
                
$url 'http://search.yahoo.com/search?p=links%3A' urlencode($this->url);
                
$v $this->my_curl_crawl($url);
                
preg_match('/of about ([0-9\,]+)/si'$v$r);
                return (
$r[1]) ? str_replace(','''$r[1]) : '0';
            break;
            
#msn
            
case 'msn':
                
$url 'http://search.msn.com/results.aspx?q=link%3A' urlencode($this->url);
                
$v $this->my_curl_crawl($url);
                
preg_match('/of ([0-9\,]+) results/si'$v$r);
                return (
$r[1]) ? str_replace(','''$r[1]) : '0';
            break;
            
#altavista
            
case 'altavista':
                
$url 'http://www.altavista.com/web/results?q=link%3A' urlencode($this->url);
                
$v $this->my_curl_crawl($url);
                
preg_match('/found ([0-9\,]+) results/si'$v$r);
                return (
$r[1]) ? str_replace(','''$r[1]) : '0';
            break;
            
#alltheweb
            
case 'alltheweb':
                
$url 'http://www.alltheweb.com/search?q=link%3A' urlencode($this->url);
                
$v $this->my_curl_crawl($url);
                
preg_match('/\<span class\="ofSoMany"\>([0-9\,]+)\<\/span\>/si'$v$r);
                return (
$r[1]) ? str_replace(','''$r[1]) : '0';
            break;
        }
    }

    function 
my_curl_crawl($url) {
        
$ch curl_init();
        
curl_setopt($chCURLOPT_URL$url);
        
curl_setopt($chCURLOPT_HEADER0);
        
curl_setopt($chCURLOPT_REFERER$url);
        
curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
curl_setopt($chCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
        
curl_setopt($chCURLOPT_VERBOSE0);
        
$content curl_exec($ch);
        
curl_close($ch);
        return(
$content);
    }
}
?>
Usage :
PHP Code:
<?php
require_once('rank.class.php');
$rank = new rank('www.example.com');
????: NamePros.com http://www.namepros.com/showthread.php?t=495405

echo(
$rank->pagerank);

print_r($rank->backlinks);
?>
__________________
xrvel is offline  
Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools


Liquid Web Smart Servers  
All times are GMT -7. The time now is 07:38 AM.

Managed Web Hosting by Liquid Web
Domain name forum recommended by Domaining.com Powered by: vBulletin® Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.6.0 Ad Management plugin by RedTyger