前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Google自定义搜索引擎[通俗易懂]

Google自定义搜索引擎[通俗易懂]

作者头像
全栈程序员站长
发布于 2022-09-07 07:31:32
发布于 2022-09-07 07:31:32
1.4K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

本文主要介绍如何通过Google的API来定义自己的搜索引擎,并将Google搜索框嵌入到自己的web页面。另外,分析了自定义搜索引擎请求数据的url,模拟请求并获取搜索的结果。

1 写在前面

前段时间发现了一个网站提供搜索百度网盘资源,挺好用的,但是广告很多,于是自己做了一个Winform窗体程序去获取该网站的数据请求,解析并绑定请求的结果。最后,也将实现Winform程序的这一过程分享到了博客园中,也就是我上一篇博文《百度网盘资源搜索器 》。

后面我发现提供网盘资源搜索的网站内部是利用google搜索引擎的api来完成的。在网上搜索了一些资料,捣鼓了google自定义搜索引擎的功能,发现确实挺好玩的。后面又有同仁问能不能介绍一下如何实现使用google搜索的api,那么下面就开始吧。

2 自定义搜索引擎

1)自定义google的搜索引擎,那首先得有一个google的账号呀,这也是第一步,先注册一个google的账号。

2)注册google的账号之后,进入自定搜索引擎的页面,https://cse.google.com/cse/,页面如下。

3)点击右侧的【新增搜索引擎】,填写你搜搜引擎的基本配置。页面如下。

我可以看到,只需要配置三项即可完成自定义搜索引擎。

  • 第一个是你需要搜索的网站,也就是说你自定义的这个搜索引擎只会在你填写的单个网页、整个网站或者整个域中去搜索你要想要的信息。在这里我们以百度网盘资源为例,填写www.pan.baidu.com
  • 第二个是语言,这个我们选择所有语言。
  • 最后一个是搜索引擎的名称,我们就填写【百度云盘搜索】

4)点击创建,就实现了自己的搜索引擎,点击右侧的【修改搜索引擎】的页面,如下图。

在修改搜索引擎的页面中有一个【搜索引擎ID】,这个特别关键,你可以点击它,查看你这个搜索引擎的id编码,还可以公开你这个搜索引擎的网址。还有一个很重要的就是【获取代码】,获取这段代码就能够实现将自定义的搜索引擎框嵌入到你自己定义的web页面中,点击【获取代码】。能够获取到一段html代码,如下:

另外,在上面步骤4)的截图1中,可以测试一下,你自定义的搜索引擎。在这里,我们输入【数学】关键字,结果如下。

3 如何使用自定义搜索引擎

在第二小节中我们已经创建了属于我们的搜索引擎了,那么下面我们如何使用它。在这里,我采用两种方式,第一种方式直接将第二节中的代码拷贝出来,并嵌入到自己web页面中;第二种方式是分析自定义搜索引擎请求的url结构和请求方式,然后去构造搜索的url,模拟请求获取查询结果。

3.1 嵌入web页面

首先自定一个html页面,然后把第二节中讲到的代码拷贝到div中,代码如下。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<html>
<body>
<meta charset="utf-8">
	<style type="text/css">
		#main{
			width:750px;
			margin:20px auto;
			 
		}
		#main p{
			text-align:center;
			font-size:25px;
			font-weight:bold;
			margin-button:100px;
		}
	</style>
</body>
<head>
<div id="main">
<p>
百度网盘资源搜索器@Jaume
</p>
<script>
  (function() {
    var cx = '搜索引擎ID';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:search></gcse:search>
</div>
</head>
</html>

注意:上面的var cx='搜索引擎ID,这个【搜索引擎ID】就是第二节创建自定义搜索引擎时自动生成的,将你创建的搜索引擎ID替换到这里即可。下面是页面效果。

这下就实现了将自定义搜索引擎嵌入到自己的web页面。

3.2 模拟请求

通过分析,搜索引擎搜索请求的url为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://www.proxy.ustclug.org/customsearch/v1element?key=AIzaSyCVAXiUzRYsML1Pv6RwSG1gunmMikTzQqY&rsz=filtered_cse&num=10&hl=zh_CN&prettyPrint=false&source=gcsc&gss=.com&sig=0c3990ce7a056ed50667fe0c3873c9b6&cx=搜索引擎ID&q=数学&sort=&googlehost=www.google.com

url主要参数分析:

  • cx:搜索引擎ID
  • q:搜索关键
  • sort:搜索结果排序方式

构造上面这种模式的url,采用GET的方式去请求,会得到如下返回的json数据,json数据包含了搜索结果以及附带属性(搜索结果总数等)。如下图所示。

明白了引擎请求搜索结果的这一流程,那么用c#语言来实现就非常简单了。代码非常简单,就不贴出来。

4 总结

使用google的api自定义搜索引擎最最关键的一点就是,你的机器要能够访问google。要是不能访问google,那就只能/(ㄒoㄒ)/~~。本文举的例子是搜索百度网盘资源,当然你也可以搜索博客园的所有资源。

其实,google自定义搜索引擎api还有更加精彩设置,你可以去玩玩。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154436.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用结构化数据自定义搜索结果摘要
你听说过可以自定义搜索结果页摘要吗?此讲告诉你用结构化数据标志可以轻松自定义搜索结果页面的摘要,了解如何自定义谷歌搜索结果中显示的简要文本。在搜索结果中,谷歌将确定网页中最相关的文本,并在链接下方向用户显示该文本。要在搜索结果页中显示自定义的摘要片段,必须要把结构化数据添加到网页中。
林雍岷
2019/07/03
1.4K0
自定义搜索引擎_如何创建自己的自定义Google搜索引擎
大家好,又见面了,我是你们的朋友全栈君。 自定义搜索引擎 Have you ever wanted to create a custom Google search engine that s
全栈程序员站长
2022/09/14
2.2K0
自定义搜索引擎_如何创建自己的自定义Google搜索引擎
无缝整合 Google 自定义搜索框到 WordPress
第一次登场,先跟大家自我介绍下。本人昵称 Packy,是一名小小站长,响应 Denis 兄的号召来与大家分享WordPress的技巧。要说WordPress的基础肯定是比不过 Denis 兄的,但是我滴折腾欲望非常强,擅长在 Google 翻箱倒柜后整合各家所长,本地测试有效果后才会来郑重的发布文章哟。
Denis
2023/04/15
3960
类似于谷歌的搜索引擎_类似谷歌的搜索引擎
本推荐参照网站searchenginejournal.com,原版为英文网站,且推荐的部分搜索引擎无法在国内使用,因此推荐阅读本篇博客。 参照网站链接:17 Great Search Engines You Can Use Instead of Google
全栈程序员站长
2022/11/04
6.4K0
类似于谷歌的搜索引擎_类似谷歌的搜索引擎
web信息收集之搜索引擎
Shodan (撒旦搜索引擎) 是由web工程师 John Mather (马瑟利) 编写的,被称为“最可怕的搜索引擎”,可扫描一切联网的设备。除了常见的web服务器,还能扫描防火墙、交换机、摄像头、打印机等一切联网设备。
wuming
2021/01/21
1.6K0
搜索引擎优化入门
本文适合新手老手,有不对的地方欢迎指正! 如果有什么问题或者建议,请务必留言, :-)
老高的技术博客
2022/12/27
1.1K0
搜索引擎优化入门
找资源什么的,这样搜索才高效
平常有问题用得最多的就是谷歌百度这类搜索引擎了,今天分享几个让你更好使用搜索引擎的技巧。
苏生不惑
2023/02/06
6610
又一个搜索神器
左侧默认分组有国内外常用搜索引擎,视频网站,音乐网站,学术网站,摸鱼网站等,比如使用谷歌搜索的时候点击左侧的百度进入百度搜索,不用再打开百度复制搜索。
苏生不惑
2022/04/11
4150
又一个搜索神器
最好用的五个黑科技搜索引擎推荐
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142494.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/25
2.8K0
最好用的五个黑科技搜索引擎推荐
终于有人把搜索引擎讲明白了
全世界每年产生1EB到2EB (1EB≈1018B)信息,相当于地球上每个人每年大概产生250MB信息。其中,纸质信息仅占所有信息的0.03%。静态网页有上百亿,动态及隐藏网页至少是静态网页的500倍。Tom Landauer认为人的大脑只能存储约200MB信息,一生只能接触约6GB信息。
IT阅读排行榜
2021/03/29
2.7K0
十个更好用的搜索工具,助你找到更多信息
如果你想用更牛逼的搜索工具,请仔细阅读下方几个工具介绍。在一定程度上,它们能帮你摆脱仗势欺人的百度,还能比别人搜到更多资源!
半夜喝可乐
2019/06/11
4.4K0
如何让你的搜索更高效
先吐槽下,国内的互联网越来越不互联了,比如手机端看全文必须下载APP,有些产品(比如闲鱼)甚至没有网页端,robot.txt禁止搜索引擎抓取,把一个个APP的内容封闭起来,于是我们手机上安装的APP越来越多。
苏生不惑
2020/10/10
7270
如何让你的搜索更高效
搜索引擎的高级搜索方法
介绍下搜索方法的高级搜索方法,之前在某平台看到过,没太在意,如今再次被人提起,就整理下。
王荣胜
2020/03/13
1.8K0
搜索引擎的工作原理
搜索引擎的基本工作原理包括如下三个过程:首先在互联网中发现、搜集网页信息;同时对信息进行提取和组织建立索引库;再由检索器根据用户输入的查询关键字,在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并将查询结果返回给用户。
全栈程序员站长
2022/09/09
1.6K0
搜索引擎solr和elasticsearch
搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。搜索引擎包括全文索引、目录索引、元搜索引擎、垂直搜索引擎、集合式搜索引擎、门户搜索引擎与免费链接列表等。
全栈程序员站长
2021/04/07
8190
搜索引擎高级搜索语法指令大全
网页标题通常是对网页内容提纲挈领式的归纳。把查询内容范围限定在网页标题中,有时能获得良好的效果。使用的方式,是把查询内容中,特别关键的部分,用“intitle:”领起来。(来源:百度百科)
用砖头敲代码
2022/08/30
3.7K0
常用搜索引擎高级指令介绍
大家好,搬运工今天又来了 搜索引擎除了搜索普通关键词外,还能使用一些特殊的搜索引擎高级指令。普通用户一般不会用到这些搜索引擎指令,但是从网站seo优化从业者的角度来说,这些搜索引擎命令对于了解己方网站seo优化效果、研究竞争对手以及找寻网站外链优化资源是非常有用的。
Erwin
2019/12/31
1K0
搜索引擎常用技巧总结
昨天晚上,我爸让我给他找zoncn变频器的手册,我看他在网上找的时候,关键词就输入了"zoncn变频器手册",我想好多人搜索东西都是这样吧,ctrl+c→ctrl+v→enter→得到结果,所以今天这篇文章就是教教大家如何高效的通过搜索引擎查找自己想要的东西。
石璞东
2020/04/21
9.4K0
搜索引擎常用技巧总结
搜索引擎查询指令大全
site:是SEO 最熟悉最常用的高级搜索指令了吧,用来搜索某个域名(用这个域名:www.wuzuhua.cn来查询,site:wuzuhua.cn)下的所有文件。
会长君
2023/04/25
5820
搜索引擎语法
0x00 前言 搜索引擎语法是一个本该经常使用但是却一直被我忽略工具。它可以在很大程度上满足一些特殊需求,比如:渗透时查找网站后台或者上传文件页面等。 目前主要常用的搜索引擎主要baidu、google、bing,每个搜索引擎的语法有细微的差别,但是很多地都非常类似,由于google在国内经常无法访问(比如我现在用了Chromebook,在家里面整笔记时候还没弄好FQ,就没法用goole),所以baidu依然是最常用所搜引擎。 0x01 常用搜索引擎语法 1.site 把搜索范围规定在特定的站点中 。但
Jetpropelledsnake21
2018/05/03
1.2K0
相关推荐
用结构化数据自定义搜索结果摘要
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验