如何使用谷歌的自定义搜索引擎来搜寻一个ASP.NET网站【转】

news/2024/5/10 8:08:25/文章来源:https://blog.csdn.net/weixin_30690833/article/details/95881699

转:http://www.cnblogs.com/jaic-xiao/archive/2008/09/23/search_zj_cnblogs_thanks__scott_mitchell.html


       ASP.NET中的站点地图功能与SiteMapPath, TreeView, 和 Menu控件帮助访问者浏览您的网站并找到信息。然而,ASP.NET没有提供任何内置的搜索功能,这是人们找到信息最常见的方式。这是不幸的,事实上网络巨头网站的用户界面,如youku,taobao,qq 一个共同点-首页上方突出搜索栏。

     实施搜索引擎绝不是一件轻而易举的事情。它涉及到创造和维护一个索引和索引内容可能存在不同的地方(在一个数据库或文件系统)和各种格式(文字, PDF格式, Microsoft Word文件,等等) 。所以我理解为什么微软从工具箱中省略搜索控件。

      更简单的办法是使用谷歌的自定义搜索引擎(CSE ) 。通常情况下,当您搜索谷歌的结果其中可能包括数以百万计的网站。 随着自定义搜索引擎,您可以限制搜索结果到指定的网站上。 更重要的是,您可以添加一个自定义搜索引擎搜索框,并将您网站的结果展示在您网站的网页上。

开始创建谷歌自定义搜索

开始访问谷歌自定义搜索引擎的主页,并点击“创建自定义搜索引擎”按钮。如图1,单页将提示您自定义搜索引擎的名称,说明和包括搜索范围的网站。您可以设定自定义搜索引擎进行搜索特别的网址如:部分网站,整个网站,或整个域。例如,要搜索.aspx 。 在页面最下面的文本框Formatting your URL写上http://www.example.com/*.aspx,因为我想搜索我的博客所有网页,所以我输入的字串是http://jaic-xiao.cnblogs.com/

图1 :指定CSE的结果范围。

单击下一步,您可以测试您的自定义搜索引擎输入查询并查看结果。 从测试页点击完成按钮来创建自定义的搜索引擎。

注意:1,如果你没有先登录Google Account的话………...,2,如果你的网站拒绝所有匿名用户的话………...,3,如果你网站下的Robots.txt文件是………...。

其中1是注册的前提,后2个将不会有任何的结果。

在ASP.NET上添加自定义搜索引擎

在创建自定义搜索引擎后,从我的搜索引擎网页您可以管理自己的自定义搜索引擎和浏览使用统计资料。

点击“控制面板”链接。 在这里您可以修改您的自定义搜索引擎的基本信息,改变网站中包含的结果,看看有多少页包含在索引中,并添加改进,帮助用户缩小搜索结果。

在控制面板的代码标签将提供HTML和JavaScript嵌入在您的网站来显示自定义搜索引擎的搜索框。 您可以配置的结果将显示在谷歌的网站或东道主的网站。 至于下面的截图显示,有两种在您网站显示结果的选择:

1.Host the result on a Google page(显示在谷歌的网站)

2.Host results on your website(显示在东道主的网站,比如博客园,或者自己的网站)

这里我决定选择第二种(Host results on your website )方法来搜索我的博客,因为iframe的结果是从一台远程服务器(即谷歌的)获得的,无需任何服务端代码,因此,这里创建的一个网页可以是ASP.NET的,也可是htm的。 此图有2个生成的脚本标记的文本框,其中第一个是显示搜索框的脚本,第二个是显示搜索结果的脚步

请注意,如果您选择<iframe>选项(像我屏幕上方一样 ) ,那么你需要提供在您的网站上搜索结果页的网址。我在博客园的后台随便创建了一个新的随笔,然后重写HTML网页并命名为Search_ZJ_CNBLOGS.html来显示结果。

然后复制<iframe>功能中的第一个文本框中显示搜索框的脚本(我建议是显示在你博客首页),如下图:

当然你也可以很容易自订(从“外观”标签)搜索框和搜索结果的外观,可以选择不同的显示搜索框,并调整搜索结果的颜色。

在然后复制<iframe>功能中的第二个文本框中的脚本内容到先前定义的Search_ZJ_CNBLOGS.html页面中( 这个说得大家应该懂吧 ),

在搜索框输入查询关键字,点按钮:

问题来了,如果按照我上面的方法做下来你会发现点搜索按钮后不能提交到我们定义的结果页Search_ZJ_CNBLOGS.html,博客园这里做得不错,安全action(-_-)。

我们看看显示搜索框的脚本:

既然上面显示文本框和按钮的脚本被博客园剥夺了,我们只能用input的HTML形式来做了:

我自己定义的HTML形式只是简单的一个文本框和按钮

实际上谷歌的form是通过查询字符串action="get"发出了表单字段。因此,我们可以直接访问网址取得结果,例如想要获取我博客关键字是“真见”的结果请访问:

http://www.cnblogs.com/jaic-xiao/archive/2008/09/23/Search_ZJ_CNBLOGS.html?cx=009090521981035216729%3Ajnq2e1upoky&cof=FORID%3A11&ie=UTF-8&q=真见&sa=Search

onclick="SearchSite();" 的Javascript如下:

到此,已经完成了任务,但不得不提还有更好的办法,您可以创建一个服务器端的Click事件处理程序使用Response.Redirect来搜索,但JavaScript的方法虽然看起来麻烦,但节省了访问Web服务器。

如果用户搜索的关键字是 “真见&ZJ“,因此导致查询结果是Search_ZJ_CNBLOGS.html?...&q=真见&ZJ&sa=...., 造成了浏览器想要搜索 真见,而后面的 ZJ 被当作了单独的查询字段,

这在ASP.NET中可以很方便的使用Server.UrlEncode方法,但这是一个服务端的方法。 一个javascript的UrlEncode方法可以从这个网站获得 http://cass-hacks.com/articles/code/js_url_encode_decode/

如果用户不想点击按钮来搜索,而是直接回车执行,因此,这里需要一个onkeypress事件,一个javascript的回车回传事件可以从这个网站获得 http://www.htmlcodetutorial.com/forms/index_famsupp_157.html

因此,完整的代码是

注意:我这里并没有编码q查询字段,因为编码了反而搜索不到结果,如果需要编码的换成 + URLEncode ( document.getElementById('q').value ) + 即可。

Thanks Scott Mitchell!

转载于:https://www.cnblogs.com/tonybinlj/archive/2008/09/28/1301215.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_805045.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用rsync实现网站镜像和备份[zt]

用rsync实现网站镜像和备份http://blog.chinaunix.net/u2/72296/showart_1093380.html 服务器端# more /etc/rsyncd.conf uid nobody gid nobody use chroot no max connections 4 pid file /var/run/rsyncd.pid lock file /var/run/rsync.lock log file /var/log/rsyn…

html h5 页面 字体大小 fontsize 5px 不生效_必途必:如何通过网站页面布局优化提升seo关键词排名?...

大多数做SEO的人不会忽视网站的页面优化。很多人把注意力集中在网站主页的页面优化上。网站页面优化也是网站内部优化的第一步。通过页面内容的布局调整和设计&#xff0c;可以创建一个用户喜欢并有利于搜索引擎抓取和识别的页面&#xff0c;从而提高搜索引擎的排名。让网站获得…

在本机上快速搭建自己的网站服务器并让外网访问

在本机上快速搭建自己的网站服务器并让外网访问 利用phpstudynat123在本机上快速搭建自己的网址服务器并让外网访问phpstudynat123 1 在百度搜索phpstudy和nat123并下载安装&#xff08;默认就行&#xff09; 2 phpstudy不需要设置&#xff0c;打开并启动服务&#xff0c;然后…

图片特效的网站

一个图片特效的网站 2008-07-02 13:02:39标签&#xff1a;图片 网站 特效 一个    [推送到技术圈] 版权声明&#xff1a;原创作品&#xff0c;如需转载&#xff0c;请与作者联系。否则将追究法律责任。一个不错的图片特效网站&#xff0c;源代码下载下来就可以用。本文出自…

LAMP建站实例

LAMP即LinuxApacheMySQLPHP&#xff0c;是网上最受欢迎的站点架设解决方案。本文以一个实例介绍其基本的应用过程。 8.4.1 企业需求 公司要为自己网站搭建了自己的网站&#xff0c;内网采用的IP地址为192.168.16.80&#xff0c;要求管理员可在网上方便进行用户管理。8.4.2 软件…

个人网站收集

文章目录1.基础学习类网站2.开发文档类网站3.解决开发难点类网站【各种库&#xff0c;插件&#xff0c;开源网站介绍】4.想要实现快速开发不可不知的5.各种功能网站6.在线工具7.开发人员应知技术8.前端UI组件库9.刷题10.代码托管平台11.社区类12.项目合作13.新闻资讯类14.书籍类…

微信公众号用户与网站用户的绑定方案

转自&#xff1a;https://www.jianshu.com/p/a51c54ddd0f3 现在很多网站都已经建立了一套完整的用户账号体系&#xff0c;基于这套体系&#xff0c;再做其他应用的用户扩展就非常方便。例如&#xff0c;有了微软的outlook账户&#xff0c;就可以登录win8&#xff0c;可以登录微…

curl 网站开发指南

curl是一种命令行工具&#xff0c;作用是发出网络请求&#xff0c;然后得到和提取数据&#xff0c;显示在"标准输出"&#xff08;stdout&#xff09;上面。 它支持多种协议&#xff0c;下面举例讲解如何将它用于网站开发。 一、查看网页源码 直接在curl命令后加上网址…

网站性能优化 - 数据库及服务器架构篇

我先前曾写过三篇有关网站系统、ASP.NET 性能优化的文章&#xff0c;分别从 SQL 语句、数据库设计、ASP.NET 功能、IIS 7 的套件&#xff0c;来探讨此一性能议题。本帖算是系列作的第四篇&#xff0c;整理了一些我看过的书籍和文章&#xff0c;改从「负载均衡、服务器架构、数据…

收集自己的网络书签,创建自己的网站导航

2019独角兽企业重金招聘Python工程师标准>>> 作为一个“宅男”&#xff0c;我常常在网络爬行&#xff0c;到处逛逛&#xff0c;就像是一只“虫子”。所以给自己取了一个“贝特虫子”的名字&#xff08;也很喜欢《音乐虫子》这歌曲&#xff09;。 由于工作的关…

20 个高质量响应式的 HTML/CSS 网站模板

来源&#xff1a;oschina 发布时间&#xff1a;2013-08-11 阅读次数&#xff1a;384 BisLite: Free HTML Website Templates Professional Responsive HTML5/CSS3 template Respond Wood working Free HTML Template Andia Wooden Wall Brownie Zeni BookStore Di…

40款非常漂亮的 HTML5 CSS3 免费网站模板【下篇】

HTML5 作为下一代网页语言&#xff0c;加入中众多更具语义的标签&#xff0c;例如video、audio、section、article、header 和 footer 等。而 CSS3 作为 CSS 的下一代版本&#xff0c;同样引入了很多很酷的属性&#xff0c;以前很多需要 JavaScript 才能实现的复杂效果&#xf…

【观点】如何打造网站高性能的核心优势

【CSDN编译】导读&#xff1a;本文根据Jeff Atwood的博文《Performance is a Feature》整理编译而来。作者就如何创建高性能网站分享了一些经验。现整理出来与大家分享。以下是博客内容&#xff1a;很多数据表明&#xff0c;网页打开和下载的速度越慢&#xff0c;用户越不愿使用…

ZenCart开源系统做外贸B2C商城的SEO优化细节建议

2019独角兽企业重金招聘Python工程师标准>>> 众所周知&#xff0c;zencart是最好的外贸B2C商城网站程序。这是因为它非常易于优化&#xff0c;对google友好。但是要做好一个zencart网站的外贸SEO优化&#xff0c;也需要在SEO优化细节下功夫。雷子在这里给大家提供用…

dwz框架在网站群项目中的应用(1)—概述

写在前面的话 作为一个刚刚参加工作的应届毕业生非常荣幸参与到此次项目中来&#xff0c;首先感谢领导和同事的信任与关怀&#xff0c;能给我这样一次参加实战的机会&#xff0c;并且在项目过程中悉心指导我的工作&#xff0c;解答我的疑惑。 我总觉得完成一个项目只是一个开始…

PHP特级课视频教程_第一集 网站大访问量_李强强

2019独角兽企业重金招聘Python工程师标准>>> 教程内容&#xff1a; 1.负载均衡技术 1).Cisco 以太网通道 2).Windows NLB技术 3).Linux LVS技术 4).F5等负载均衡器 2.数据冗余技术 1).Cisco HSRP热备份路由 2).Windows集群技术 …

企业网站如何备案

当前&#xff0c;随着国家工信部对互联网行业管理力度的提升和规范化&#xff0c;在网站制作公司跟客户把网站做完成以后&#xff0c;政策规定网站需要通过备案才能正常访问。今天我们就聊聊网站备案流程和体会以及一些注意事项。 工具/原料域名 主机 备案人 营业执照 联系信息…

模拟浏览器登录网站

2019独角兽企业重金招聘Python工程师标准>>> 本程序采用JAVA所定&#xff0c;举个例子是模拟浏览器登录小米官网&#xff0c;采用的类主要是HttpURLConnection,HttpsURLConnectionURL请求的类别: 分二类,GET与POST请求。二者的区别在于&#xff1a; a:) get请…

github+firebase建站

为什么80%的码农都做不了架构师&#xff1f;>>> #背景介绍# 毕业几个月了&#xff0c;需要更新大家的通讯录&#xff0c;但是google doc有些同学反映总打不开&#xff08;不是所有的计算机毕业学生都会当程序员&#xff09;&#xff0c;国内的在线DOC我找到的都不支…

设计多选一按钮ChooseOnlyButton

设计多选一按钮ChooseOnlyButton 效果: 源码: ChooseOnlyButton.h 与 ChooseOnlyButton.m // // ChooseOnlyButton.h // ChooseOnlyButton // // Created by YouXianMing on 14/11/4. // Copyright (c) 2014年 YouXianMing. All rights reserved. //#import <UIKit/UIKi…