首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

收藏此问题 发表新评论

关键字排名查询,大家帮忙!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

<?php
function getKeyWord($url,$KeyWord)
{
$t_a=$KeyWord;
$pm=array();
foreach($t_a as $k=>$v)
{
for ($i=0; $i <10; $i++)
{
      $link= "http://www.baidu.com/slm=0&si=&rn=10&tn=monline_dg&ie=gb2312&ct=0&wd=$KeyWord//(关键字)&pn={$i}0//(页数,每页10条)&ver=0&cl=3",
  $html = file_get_contents($link);
  preg_match_all('/class=f>(.*?)target="_blank>/', $html, $matches);
      for($j=0;$j <count($matches[1];$j++)
      {
        if($matches[1][$j],$url)
        {
        $pm[$k]=$j+1;
        break;
        }
      else
     
        {
     
        $pm[$k]=101;
     
        }
     
      }
  }
}

?>

传一个 url($url)和 一个关键字($KeyWord)进来, 根据关键字,可以查询到你输入的url在baidu里排第几个 然后输出
  我这里测试不了,环境没装好。
    大家看看有哪里错误吗? 本来刚转来用PHP时间不长,所以拿不准,大家帮忙看看 
    明天就要用,请大家帮忙!!!! 如果作为单页面进行运行 是否是 直接输出 $pm就可以?
昵称: jieyi1106  时间: 2008-08-20 21:26:21
帮顶下
昵称: lvjx125  时间: 2008-08-21 09:02:31
第一点:关键字要编码 ,urlencode之类的看看
第二点:每面显示条数,可试100或1000看看
第三点:正则提取url,你会不会,测试后再做
每四点:提取url时同时计数,并分析域名是否和你的一样,计算排名

昵称: fxs_2008  时间: 2008-08-21 10:30:56
你的正则模式可能不对

另外正则返回的数组不一定就是你想要的

最好是自已测试清楚


其他的基本正确,对比url和你相等的就退出
昵称: fxs_2008  时间: 2008-08-21 10:38:34
什么跟什么吗?错误太多了!
昵称: changrui  时间: 2008-08-21 10:53:44