SEO的原始含义以及现实意义
搜索引擎优化(Search Engine Optimization)简称SEO
含义: 提升网页在搜索引擎自然搜索结果中(非商业性推广结果)的收录数量及排序位置而作的优化行动。
目的: 从搜索引擎中获得更多的免费流量以及更好地展现网站形象。
原始含义: 想办法从搜索引擎中获取免费流量。
现实含义: 从搜索引擎中拉取免费流量是本职工作,提高搜索流量转化率相关的用户体验、运营等工作是附加工作。
SEM
搜索引擎营销(Search Engine Marketing)简称SEM
内容: 既包括了SEO,也包括了付费的商业推广与优化
搜索引擎原理
搜索引擎架构
分为两部分:主动抓取网页进行一系列处理后建立索引,等待用户搜索;分析用户搜素意图,展现用户所需要的搜索结果。
步骤 :
- 派出Spider,按照一定策略吧网页抓回到搜索引擎服务器
- 对抓回的网页进行链接抽离、内容处理、消除噪声、提取该页主题文本内容等
- 对网页的文本内容进行中文分词、去除停止词等
- 对网页内容进行分词后判断该页面内容与已索引的网页是否有重复,剔除重复页,对剩余网页进行倒排索引,然后等待用户的检索
- 先对用户所要查询的关键词进行分词处理,并根据用户的地理位置和历史检索特征进行用户需求分析,以便使用地域性搜索结果和个性化搜索结果展示用户最需要的内容
- 查找缓存中是否有该关键词的查询结果,如果有,为了最快第呈现查询结果,搜索引擎会根据当下用户的各种信息判断其真正需求,对缓存中的结果进行微调或直接呈现给用户
- 如果用户所查询的关键词不在缓存中,那么就在索引库中的网页进行调取排名呈现,并将该关键词和对应的搜索结果加入到缓存中
- 网页排名是根据用户的搜索词和搜索需求,对索引库的网页进行相关性(链接权重分析)和用户体验的高低进行分析所得出的。用户在搜索结果中的点击和重复搜索行为,也可以告诉搜索引擎,用户对搜索结果页面的使用体验。这块是近来作弊最多的部分,所以这部分会伴随着搜索引擎的反作弊算法进行干预,有时甚至可能会进行人工干预。
Spider
Spider也就是爬虫,是整个搜索引擎最上游的一个模块,只有Spider抓回的页面或URL才会被索引和参与排名。需要注意的是,只要是被Spider抓到的URL都可能参与排名,但参与排名的不一定就被Spider抓取到了内容。
Spider的分类
批量型Spider
具有明显的抓取范围和目标,设置抓取时间的限制、抓取数量的限制或抓取固定范围内页面的限制等,当Spider的作业达到预先设置的目标就会停止。
增量型Spider
也可称为通用爬虫。没有固定的目标、范围和时间限制,一般会无休止地抓取下去,直到到把全网的数据爬完为止。
垂直型Spider
也可称为聚焦爬虫。只对特定主题、内容或行业的网页进行爬取,一般会聚焦在某一个限制范围内进行增量型的抓取。
Spider的抓取策略
网页分为四类:
- 已抓取页面;
- 待抓取页面;
- 可抓取页面;
- 暗网中的页面
抓取策略:
深度优先策略和广度优先策略
重要页面优先抓取策略和大站优先策略
Spider并不会“爬”
Spider抓取一个网页后会优先把网页中的URL提取出来,同时记录和计算URL的形式、位置、锚文本、当前页所赋予的权值等信息,然后把这些URL合并到抓取队列中,并根据每个URL所附有的总权值等信息进行抓取队列内排序。
Spider对网站的访问并没有refer,都是直接访问。
蜘蛛陷阱:无意义的URL组成,造成Spider抓取资源的浪费。
Spider和普通用户的区别
- Spider可以分辨出网页中是否有隐藏内容,是否被挂了黑链等,但不能完全了解网页中图片的内容,更不能读取JavaScript、iframe、Ajax和flash中的内容,普通用户则恰恰相反;
- Spider没有Refer,对网站的抓取全部都是直接访问,而普通用户中除了直接访问的用户之外一般都是有Refer的;
- Spider对网站的访问没有Cookie,但普通用户是有的;
- Spider不会主动注册登入网站,但普通用户是可以的;原则上Spider不会抓取和分析网站robots中已经屏蔽的内容,但是普通用户是有的;
- Spider对于有多个动态参数网站的爬取,可能会陷入死循环,但普通用户是不会的;
- Spider对于列表中前几页的新内容抓取可能不好,但是感兴趣的用户会依次浏览;
- Spider暂时还不能真正判断文章是不是原创,但是普通用户可以通过多种方式来确定文章是原创还是采集转载等;
内容处理、中文分词和索引
内容处理
步骤:
- 判断页面的类型。是普通网页还是PDF、Word、Excel等特殊文件文档。
- 提取网页的文本信息。title keywords description等标签中的内容
- 去除页面噪声。与网页无关的广告、导航、链接、图片、登入框、网站版权信息等内容全部剔除掉,只提取该网页的主体内容。
- 去除内容中的停止词。剔除掉 ~~ 的 得 地 啊 呀 却~~ 之类的停止词
中文分词
分词是中文搜索引擎中特有的技术。
方法:
1、基于词典匹配。使用搜索引擎自己的词典对网页内容进行拆分。按照匹配方向的不同,分为正向匹配和逆向匹配;按照不同长度优先匹配的不同可分为最长匹配和最短匹配。常见的三种匹配方法是正向最大匹配、逆向最大匹配和最少切分。
2、基于统计。不仅依靠词典,而是对大量文字样本进行分析,然后把相邻出现次数较多的几个字当成一个词来处理。基于统计的分词方法在一定程度上解决了搜索引擎词典的更新问题,并且有利于消除歧义。
索引
正向索引:
| 文件ID | 内容所切分出的关键词 |
|---|---|
| 文件1 | 关键词1、关键词2、关键词3…关键词Z |
| 文件2 | 关键词3、关键词5、关键词7…关键词O |
| 文件3 | 关键词6、关键词7、关键词8…关键词P |
| … | … |
| 文件n | 关键词8、关键词9、关键词10…关键词M |
倒排索引
| 关键词 | 文件 |
|---|---|
| 关键词1 | 文件1、文件2、文件3…文件L |
| 关键词2 | 文件3、文件4、文件5…文件M |
| 关键词3 | 文件5、文件6、文件8…文件N |
| … | … |
| 关键词n | 文件9、文件10、文件11…文件P |
搜索引擎中使用的是倒排索引。
倒排索引中不仅仅记录了包含响应关键词文件的ID,还会记录关键词频率、每个关键词出现在文件中的位置等信息。在排名过程中,这些信息会被分别进行加权处理,并应用到最终的排名结果中。
网页去重原理
去重的工作一般会在分词之后和索引之前进行(也可能在分词之前),搜索引擎会在页面已经分出的关键词中,提取部分具有代表性的关键词,然后计算这些关键词的“指纹”。每个网页都会有特征指纹,当新抓取的网页的关键词和已索引的网页关键词指纹吻合时,那么该新网页就可能会被搜索引擎视为重复内容而被放弃索引。
用户需求分析
1、搜索词分析
2、 搜索意图分析
内容相关性计算
1、关键词匹配
2、语义分析
有效索引和缓存机制
为了节省资源和提升响应速度
有效索引:满足大众搜索请求的小范围网页索引集合。
缓存机制:把一些用户经常搜索的关键词的搜索结果放入到缓存中,这样当该关键词再次被搜索时,就可以直接从内存中调取搜索结果,而不必再从索引库中进行重新检索和排名。减少了搜索引擎对数据的重复计算。
反作弊和人工干预
反作弊算法
黑白名单
根据网站内容的质量、权重和品牌建立白名单,找出明显作弊严重的网站建立黑名单。
白名单中网站全是好的、健康的网站;含有黑名单链接的网站可能会存在某种问题。
作弊特征研究
现在搜索引擎进行的反作弊的主要手法。
简单概括就是师夷长技以制夷
人工干预
进行人工干预的情况:
- 站长利用算法漏洞,使用低质量内容抢夺太多的搜索流量,明显影响到用户体验;
- 针对热门搜索词或敏感词,为了“不同篓子”会进行人工干预,搜索结果只使用某些主流网站的内容;
- 针对不满意的搜索结果进行各项因素的权重比例微调等。