Home > php教程 > PHP源码 > 抓取百度排名

抓取百度排名

PHP中文网
Release: 2016-05-25 17:13:45
Original
1369 people have browsed it

抓取百度排名      

1. [图片] so.png    

抓取百度排名

2. [代码][PHP]代码 

function s($keyword,$url,$page = 1){
	static $px = 0;
	$rsState = false;
	
	$enKeyword = urlencode($keyword);
	$firstRow = ($page - 1) * 10;
	
	if($page > 10){
		die('10页之内没有该网站排名..end');
	}	
	$contents = file_get_contents("http://www.baidu.com/s?wd=$enKeyword&&pn=$firstRow");
	preg_match_all(&#39;/<table[^>]*?class="result"[^>]*>[\s\S]*?<\/table>/i&#39;,$contents,$rs);
	foreach($rs[0] as $k=>$v){
		$px++;
		if(strstr($v,$url)){
			$rsState = true;
			preg_match_all(&#39;/<h3[\s\S]*?(<a[\s\S]*?<\/a>)/&#39;,$v,$rs_t);
			echo &#39;当前 "&#39; . $url . &#39;" 在百度关键字 "&#39; . $keyword . &#39;" 中的排名为:&#39; . $px;
			echo &#39;<br>&#39;;
			echo &#39;第&#39; . $page . &#39;页;第&#39; . ++$k . "个<a target=&#39;_blank&#39; href=&#39;http://www.baidu.com/s?wd=$enKeyword&&pn=$firstRow&#39;>进入百度</a>"; 
			echo &#39;<br>&#39;;
			echo $rs_t[1][0];
			break;
		}
	}
	unset($contents);
	if($rsState === false){
		s($keyword, $url,++$page);
	}
}
if(isset($_POST[&#39;submit&#39;])){
	
	$time = explode(&#39; &#39;,microtime());
	$start = $time[0] + $time[1];

	$url = $_POST[&#39;url&#39;];
	if( count(explode(&#39;.&#39;,$url)) <= 2){

		$url = ltrim($url,&#39;http://&#39;);
		$url = &#39;www.&#39; . $url;
	}

	s($_POST[&#39;keyword&#39;],$url);
	
	$endtime = explode(&#39; &#39;,microtime());

	$end = $endtime[0] + $endtime[1];

	echo &#39;<hr>&#39;;
	echo &#39;程序运行时间: &#39;;
	echo $end - $start;	
	die();
}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<title>抓取排名</title>

</head>

<body>
<form action="" method="post">
	<ul>
		<li>
			<span>关键字:</span><input type="text" name="keyword">
		</li>
		<li>
			<span>url地址:</span><input type="text" name="url">
		</li>
		<li>
			<input type="submit" name="submit" value="搜索">
		</li>
	</ul>
	
</form>
</body>
</html>
Copy after login


Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template