前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浏览器→搜索引擎→爬虫

浏览器→搜索引擎→爬虫

作者头像
石璞东
修改2020-04-22 22:12:43
1.1K0
修改2020-04-22 22:12:43
举报
文章被收录于专栏:石璞东 | haha石璞东 | haha

浏览器(也有人叫阅览器)大家都不陌生吧,大概10年前有一句火遍地球的潮话"百度一下,你就知道",相信看到这篇文章的你是不是曾经也在试卷上写过这句话呢,,哈哈,不开玩笑,今天我们就来聊聊浏览器,准确的说是讲讲搜索引擎。

Part.1

浏览器市场份额分析

根据国家计算机网络应急技术处理协调中心于2019年4月发布的“国内操作系统及浏览器占比情况分析”报告显示,在 PC 端的浏览器中,IE 浏览器占比最高,为 36.02%,较上季度占比下降约 10%。Chrome 浏览器占比为 25.70%,QQ 浏览器占比 19.84%,Firefox 浏览器占比 3.17%,搜狗浏览器占比2.34%,2345浏览器占比1.32%,Edge浏览器占比1.05%,360 浏览器占比 0.83%,Safari 浏览器占比 0.73%,其他PC端浏览器占比 9.00%。PC 端浏览器分布情况如下图所示。

对 IE 浏览器各版本分布情况进行分析,发现 IE7 占比最高,为 28.32%,较上季度占比下降约 11%。IE9 占比为 18.77%,较上季度占比上升约 7%。IE8 占比为 15.56%,IE6 占比为14.56%,IE11 占比为 13.18%,IE10 占比为 4.57%,其他 IE浏览器版本占比5.03%。PC端IE浏览器分布情况如下图所示。

在移动端的浏览器中,Chrome浏览器占比最高,为34.48%,与上季度占比基本一致。UC 浏览器占比 19.30%,QQ 浏览器占比 15.52%,Safari 浏览器占比 7.08%,OPPO 浏览器占比7.03%,vivo 浏览器占比 6.89%,MIUI 浏览器占比 2.30%,百度浏览器占比 0.80%,其他移动端浏览器占比 6.59%。移动端浏览器分布情况如下图所示。

根据我在国外数据分析机构StarCounter查到的结果,Chrome浏览器稳坐全球浏览器第一,其他浏览器市场份额均有所下滑。

初步得出结论,Chrome现在很火,回看国内,想必大家常用的就是百度、搜狗、QQ浏览器、UC浏览器等了吧,但是我想说一点:国内几乎所有的浏览器只是把国外的浏览器做了个深度定制,然后标上中国公司的名字,简单来说,就是浏览器内核用的是别人的,只是改了下外观。看下图User-Agent字段:

这个道理就类似手机系统,看国内,像是小米的MIUI系统、华为的EMUI系统还有魅族的flyme系统,去百度查查这些系统的介绍就知道,这些手机系统全是基于Android深度定制的。

ok,我给大家推荐我用的几个浏览器,首先PC端:搜狗高速浏览器(记着是高速浏览器)、Chrome,手机/Ipad:via、magi、搜狗、Chrome。

Part.2

搜索引擎及其技术架构

说完了国内外浏览器占比的分析,我们来说点干货,关注一下浏览器中very重要的一个part--搜索引擎。

从搜索引擎所采取的技术来说,可以将搜索引擎技术的发展划分为4个时代:

  • 史前时代:分类目录的一代

这个时代也被称为"导航时代",典型代表是Yahoo和国内的hao123,主要是通过人工收集整理,把属于各个类别的高质量网站或者网页分门别类罗列,用户可以根据分级目录来查找高质量的网站,并未采取什么高深的技术手段。缺点也很明显,可扩展性不强,绝大部分网站不能收录。

  • 第一代:文本检索的一代

文本搜索的一代采用经典的信息检索模型,比如布尔模型、向量空间模型或者概率模型,来计算用户查询关键词和网页文本内容的相关程度。网页之间有丰富的链接关系,而这一代搜索引擎并未使用这些关系。典型代表有Alta Vista、Excite等。

相比分类目录,这种方式可以收录大部分网页,并能够按照网页内容和用户查询的匹配程度进行排序。但是总体而言,搜索结果不是很好。

  • 第二代:链接分析的一代

第二代搜索引擎充分利用了网页之间的链接关系,并深入挖掘和利用了网页链接所代表的含义。简单来说,普遍认为被推荐多次的网页其实代表了其具有流行性,也就是现在大家所说的PageRank技术(由Google提出),但是这种搜索引擎并未考虑用户的个性化要求,所以只要输入的查询请求相同,用户就会获得相同的结果。除此之外,许多网站为了获得更高的搜索排名,针对链接分析法提出了不少链接作弊方案,从而导致质量变差。

  • 第三代:用户中心的一代

目前的搜索引擎都可以归为第三代,即以理解用户需求为中心,不同用户即使输入同一个关键词,但其目的也有可能不一样,因此搜索引擎呈现的结果也不一样。为了能够获取用户的真实需求,目前搜索引擎大都做了很多技术方面的尝试。比如利用用户发送查询词的时间和地理位置信息,利用用户以往发的查询词及相应的点击记录等历史信息等技术手段,来试图理解用户此时此地的真正需求。

一个真正好的浏览器,主要看三点:

  • 用户真正的需求是什么

用户输入的关键词是有限的,每个用户总结提炼问题的能力是不同的,不同用户输入同一个关键词期望得到的搜索结果也是不同的,如果不能理解用户的真正意图,那么从用户层面来讲,这就是一款不好的产品。

  • 哪些信息是和用户需求真正相关的

搜索引擎的本质是一个匹配的过程,即从海量的数据中找到能够匹配用户需求的内容,举个栗子,关键词搜索"石璞东",你就不能弹出"刘德华、吴亦凡等"这些人的信息,虽然我们很相近

  • 哪些信息是用户可以信赖的

搜索引擎需要处理的信息对象是互联网上任意用户发布的内容,但是内容发布者所发布的内容是否可信并无明确标准。这其间存在恶意的信息发布者故意歪曲事实的情况,也有信息发布者无心的错误。在同一个查询的搜索结果内,完全可能存在相互矛盾的搜索答案,此时信息的可信性即成为突出问题。

最典型的就是饱受诟病的某度,之前他们的竞价排名虽说给公司带来了巨额的利润,但是对于用户来说,这无疑是灭敌之灾。

最后我们在看看搜索引擎的技术架构:

当搜索引擎接收到用户的查询词之后,首先需要对查询词进行分析,希望能够结合查询词和用户信息来正确推导用户的真正搜索意图。在此之后,首先在缓存中查找,搜索引擎的缓存系统存储了不同的查询意图对应的搜素结果,如果能在缓存系统中找到满足用户需求的信息,则可以直接将搜索结果返回给用户,这样既省掉了重复计算对资源的损耗,又加快了响应速度;如果保存在缓存的信息无法满足用户的需求,搜索引擎需要调用"网页排序"模块功能,根据用户的查询实时计算哪些网页是满足用户需求的,并排序输出作为搜索结果。而网页排序最重要的两个参考因素中,一个是内容内容相似性因素,即哪些网页是和用户查询密切相关的;另外一个是网页重要性因素,即哪些网页是质量较好或者相对重要的,这点往往可以从链接分析的结果中获得。综合以上两个考虑因素,就可以对网页进行排序,作为用户查询的搜索结果。

除上述的子功能模块,搜索引擎的"反作弊"模块成为日益重要的功能。搜索引擎作为互联网用户的上网入口,对于网络流量的引导和分流至关重要,甚至可以说起了决定性的作用。于是,各种"作弊"方式逐渐流行,通过各种手段将网页的搜索排名提高到与网页质量不相称的位置,这会严重影响用户的搜索体验。所以,如何自动发现作弊网页并对其进行处罚,成为搜索引擎非常重要的部分。

Part.3

归根到底还是爬虫

一般来讲,像是百度、Google这种搜索引擎,它们有自己的Spider程序和数据库,我们称为"全文式搜索引擎",另一种是淘宝、京东等这种在站内进行搜索的,它们又被称之为垂直搜索引擎。具体搜索引擎分类的文章我之前已经写过了,此处不再赘述,请大家移步我的网站进行查看。

http://www.shipudong.com/2019/04/05/yi-dong-zhi-fu-na-xie-shi/

总结一下,首先我们入网的接口是浏览器,通过浏览器我们可以有选择性的获取互联网中的信息,而浏览器厂商有自己的spider程序,一年365天不间断的爬取互联网上的信息,并存储在自己的数据库中,供用户在查询的时候很快的呈现在用户的眼前。所以说,浏览器至关重要的一点就是,通过自己高效的爬虫程序,尽可能的爬取所有的信息,并通过Pr值等其他重要指标进行排序,最终呈现给用户。

声明

更多内容请移步我的公众号平台hahaCoder或者个人网站http://www.shipudong.com进行查看。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-12-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 hahaCoder 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Part.1
  • Part.2
  • Part.3
  • 声明
相关产品与服务
流计算 Oceanus
流计算 Oceanus 是大数据产品生态体系的实时化分析利器,是基于 Apache Flink 构建的企业级实时大数据分析平台,具备一站开发、无缝连接、亚秒延时、低廉成本、安全稳定等特点。流计算 Oceanus 以实现企业数据价值最大化为目标,加速企业实时化数字化的建设进程。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档