Go Back   vb.org Archive > Community Central > Community Lounge
Prev Previous Post   Next Post Next
  #4  
Old 07-05-2003, 03:51 PM
Slynderdale Slynderdale is offline
 
Join Date: Mar 2002
Location: New York State
Posts: 576
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If any one's interested, I made a function that connects to google and does a small quick query to find out how many sites google has indexed for the given domain, then the function parses the html and returns the number of indexed sites.

PHP Code:
function GetGoogleStats($site,$remove_commas=false) {
  global 
$HTTP_SERVER_VARS;
  
$site trim($site);
  if (
$site) {
    
$url "http://www.google.com/search?q=allinurl:$site&num=1&hl=en&lr=&ie=UTF-8&oe=UTF-&safe=off&start=0&sa=N&filter=0";
    
$preg_match "Results <b>([0-9,]+)<\/b> - <b>([0-9,]+)<\/b> of about <b>([0-9,]+)<\/b>.";
    if (
$url) {
      
$urlArray parse_url($url);
      if (!
$urlArray[port]) $urlArray[port] = "80";
      if (!
$urlArray[path]) $urlArray[path] = "/";
      if (
$fp = @fsockopen($urlArray[host], $urlArray[port], $errnum$errstr10)) {
        
$port = ($urlArray[port]!="80"?":".$urlArray[port]:"");
        
$dump "GET $urlArray[path]?$urlArray[query] HTTP/1.1\r\n";
        
$dump .= "User-Agent: ".$HTTP_SERVER_VARS['HTTP_USER_AGENT']."\r\n";
        
$dump .= "Host: $urlArray[host]$port\r\n";
        
$dump .= "Connection: close\r\n";
        
$dump .= "\r\n";
        if (
trim($dump)) {
          
fputs($fp$dump);
        }
        
$buffer "";
        while (!
feof($fp)) {
          
$line chop(fgets($fp,50000));
          if (
preg_match("/".$preg_match."/i",$buffer$matches)) {
            
$indexes = ($matches[3]==0?"0":$matches[3]);
            break;
          }
          
$buffer .= $line;
        }
        
fclose($fp);
        if (!isset(
$indexes)) {
          if (
preg_match("/".$preg_match."/i",$buffer$matches)) {
            
$indexes = ($matches[3]==0?"0":$matches[3]);
          }
        }
        if (isset(
$indexes)) {
          if (
$remove_commas==true) {
            
$indexes str_replace(',','',$indexes);
            return 
intval($indexes);
          } else {
            return 
$indexes;
          }
        } else {
          return 
0;
        }
      }
    }
  }
  return 
0;

Example:
PHP Code:
$site trim($site);
if (!
$site$site "google.com";
$stats GetGoogleStats($site);
if (
$stats>0) echo "Google has indexed $stats pages for ".htmlspecialchars($site);
else echo 
"There was an error proccessing the data."
Output:
Google has indexed 2,000,000 pages for google.com
Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 05:28 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.06199 seconds
  • Memory Usage 2,404KB
  • Queries Executed 12 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete