当前位置:首页 > PHP教程 > php应用 > 列表

获取关键词及所属来源搜索引擎名称

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-05 14:23:55 浏览: 评论:0 

原理是从url中提取关键词,参数说明:url及关键词前的字符,然后进行处理与来源判断是那个搜索引擎,这样保存到数据就就行了,PHP实例代码如下:

  1. <?php 
  2. // 
  3.  
  4. $search_url = isset($_get['url'])?$_get['url']:''//代表传入的地址 
  5. /*$search_url = urldecode($search_url); 
  6. print_r($search_url); 
  7. */ 
  8.  
  9. $config = array
  10.     "s1"=>array
  11.         "domain" => "google.com"
  12.         "kw" => "q"
  13.         "charset" => "utf-8" 
  14.     ), 
  15.     "s3"=>array
  16.         "domain" => "google.cn"
  17.         "kw" => "q"
  18.         "charset" => "utf-8" 
  19.     ), 
  20.     "s4"=>array
  21.         "domain" => "baidu.com"
  22.         "kw" => "wd"
  23.         "charset" => "gbk" 
  24.     ), 
  25.     "s5"=>array
  26.         "domain" => "soso.com"
  27.         "kw" => "q"
  28.         "charset" => "utf-8" 
  29.     ), 
  30.     "s6"=>array
  31.         "domain" => "yahoo.com"
  32.         "kw" => "q"
  33.         "charset" => "utf-8" 
  34.     ), 
  35.     "s7"=>array
  36.         "domain" => "bing.com"
  37.         "kw" => "q"
  38.         "charset" => "utf-8" 
  39.     ), 
  40.     "s8"=>array
  41.         "domain" => "sogou.com"
  42.         "kw" => "query"
  43.         "charset" => "gbk" 
  44.     ), 
  45.     "s9"=>array
  46.         "domain" => "youdao.com"
  47.         "kw" => "q"
  48.         "charset" => "utf-8" 
  49.     ), 
  50. ); 
  51.  
  52. //函数作用:从url中提取关键词。参数说明:url及关键词前的字符。 
  53. function get_keyword($url,$kw_start
  54.  
  55.     $start = stripos($url,$kw_start); 
  56.     $url = substr($url,$start+strlen($kw_start)); 
  57.     $start = stripos($url,'&'); 
  58.     if ($start>0) 
  59.     { 
  60.         $start=stripos($url,'&'); 
  61.         $s_s_keyword=substr($url,0,$start); 
  62.     } 
  63.     else  
  64.     { 
  65.         $s_s_keyword=substr($url,0); 
  66.     } 
  67.     return $s_s_keyword
  68.  
  69. $arr_key = array(); 
  70. foreach($config as $item){ 
  71.     $sh = preg_match("/b{$item['domain']}b/",$search_url); 
  72.     if($sh){ 
  73.         $query = $item['kw']."="
  74.  
  75.         $s_s_keyword = get_keyword($search_url,$query); 
  76.         $f_skey=urldecode($s_s_keyword); 
  77.         if($item['charset']=="utf-8"){ 
  78.             $f_skey=iconv( "utf-8","gb2312//ignore",$f_skey); //最终提取的关键词 
  79.         } 
  80.         $keys = explode(" ",$f_skey); 
  81.         $arr_key[$item['domain']] = $keys
  82.     } 
  83. echo "<pre>"
  84. print_r($arr_key); 
  85.  
  86. ?> 
  87. <form action="index.php" method="get"
  88.     <input name="url" size="80"><button type="submit">go</button> 
  89. </form> 

Tags: php获取关键词 来源搜索引擎

分享到: