主要核心代码

 

function s($keyword,$url,$page = 1){

static $px = 0;

$rsState = false;

$enKeyword = urlencode($keyword);

$firstRow = ($page - 1) * 10;

if($page > 10){

die('10页之内没有该网站排名');

}

$contents = file_get_contents("http://www.baidu.com/s?wd=$enKeyword&&pn=$firstRow");

preg_match_all('/]*?class="result"[^>]*>[\s\S]*?<\/table>/i',$contents,$rs);

//另一种

//preg_match_all('/(

[\s\S]*?<\/table>)|(]*?class="result"[^>]*>[\s\S]*?<\/table>)/i',$contents,$rs);

foreach($rs[0] as $k=>$v){

$px++;

if(strstr($v,$url)){

$rsState = true;

preg_match_all('/)/',$v,$rs_t);

echo '当前 "' . $url . '" 在百度关键字 "' . $keyword . '" 中的排名为:' . $px;

echo '
';

echo '第' . $page . '页;第' . ++$k . "个进入百度"; 

echo '
';

echo $rs_t[1][0];

break;

}

}

unset($contents);

if($rsState === false){

s($keyword, $url,++$page);

}

}

 

调用时:

 

if(isset($_POST)){

$url = $_POST['kwurl'];

if( count(explode('.',$url)) <= 2){

$url = ltrim($url,'http://');

$url = 'www.' . $url;

}

s($_POST['kw'],$url);

}

 

 

你可能感兴趣的:(php)