Mysoo2 站内搜索引擎安装指南
百度阿拉丁平台剑指垂直搜索
谷歌测试在搜索建议中放广告
谷歌与百度的八年“暗战”
Google公布2008年度搜索排行榜
传戴尔PC将放弃谷歌选择微软Live搜索引擎
雅虎高级搜索专家陆奇将任微软数字部门高管
微软不娶雅虎 只想买搜索业务
微软退出搜索市场能对Google造更大伤害
雅虎打造BOSS垂直搜索引擎
谷歌百度口水战升级 比拼"谁更懂中文"
从百度“竞价门”看企业的社会责任感
山寨版搜索引擎“百谷虎”雷倒网友
雅虎搜索技术高管跳槽至微软
面对“搜索门” 百度公司力挽声誉
内容更新频率对SEO的影响


 ·中文搜索引擎技术揭密:网络蜘蛛
 ·全文信息检索介绍及算法分析
 ·全文检索引擎的技术指标(一)
 ·我的绝招:用JSP实现全文检索
 ·谈谈中文全文信息检索系统中的索引技术
 ·使用雅虎实现免费站内搜索
 ·搜索引擎机器人研究报告
 ·中文搜索引擎技术揭密:排序技术
 ·中文搜索引擎技术揭密:系统架构
 ·中文搜索引擎技术揭密:中文分词




站在巨人的肩膀上,建立自己的站内搜索引擎


 共1页 

  若想在某特定网站内搜索特定的内容(如搜索www.mysoo.com.cn中包含关键字“站内搜索”的内容),只需要在Google的搜索栏里输入:“站内搜索 site:mysoo.com.cn”即可(不含引号)。如果直接在自己站点的网页上建立一个Google的搜索栏,然后让访问者按Google规定的格式进行查询,那不就能实现Google作为自己站内搜索引擎的功能了吗?但是我们当然不能要求使用者还要特地学习Google对特定网站搜索的格式规范。于是笔者立刻联想到是否可以使用JavaScript脚本使得Google接收的查询关键字后自动加上类似“site:cfan.com.cn”的字符串呢?答案当然是肯定的。在你的网站首页需要放置站内搜索引擎页面的<body>标签的范围内放置如下代码:

  <script type="text/javascript">
  var domainroot="mysite.com"//个人站点域名,替换成你的网站的网址即可
  function Gsitesearch(curobj){
  curobj.q.value="site:"+domainroot+" "+curobj.qfront.value
  }
  </script>
  <form action="http://www.Google.com/search" method="get" onSubmit="Gsitesearch(this)">
  <p>站内搜索:<br />
  <input name="q" type="hidden" />
  <input name="qfront" type="text" style="width: 180px" /> <input type="submit" value="开始搜索">
  </p>
  </form>

  脚本的关键部分在于Gsitesearch函数。语句:“curobj.q.value="site:"+domainroot+" "+curobj.qfront.value”的含义为:将“site:”字符串+变  量domainroot、空格、访客填写的关键字依此合并。既使得搜索格式符合Google的语言规范,又使增加了搜索功能的友好性,不需要用户来遵循Google的搜索规则。

  至此,您的专业站内搜索引擎就完成了(见图1 完成的站内引擎)。


  如果我们不但要搜索本站的内容,还要让访客同时能搜索兄弟站点或本类网站的内容,该如何修改呢?接下来我们就对我们刚才的代码做一些推广。

  <script type="text/javascript">
  function Gsitesearch(curobj){
  var domainroot=curobj.domainroot[curobj.domainroot.selectedIndex].value
  curobj.q.value="site:"+domainroot+" "+curobj.qfront.value
  }
  </script>
  <form action="http://www.Google.com/search" method="get" onSubmit="Gsitesearch(this)">
  <p>
  <input name="q" type="hidden" />
  <input name="qfront" type="text" style="width: 180px" /> <input type="submit" value="立刻搜索" /><br /><br />
  站点:
  <select name="domainroot">
  <option value="www.mywebsite.net" selected="1">本站</option>
  <option value="www.friend1site.net">友站1</option>
  <option value="www.friend2site.net">友站2</option>
  </select>
  </p>
  </form>

  我们只需要将Gsitesearch函数稍做修改,搜索的灵活性就能大大加强。站长只需要增删option选择项,即可实现多站点的内容搜索(见图2 支持多站点的站内搜索引擎)。


  有时强大的功能并不需要多么复杂的技术才能实现,而仅仅需要一点灵感和一点专注。

 共1页 

来源: 电脑爱好者 | 作者: | 发表时间: 2006-9-7 13:16:00

 

 


Copyright © 2000-2008 Mysoo.com.cn, All Rights Reserved Mysoo.com.cn 版权所有                                  把Mysoo添加到 Google   沪ICP备06051139