进阶篇:搜索引擎优化(SEO)
搜索引擎优化(SEO,Search Engine Optimization),指遵循搜索引擎的工作规则,对网站进行一系列优化,以此提升网页在搜索引擎中的收录数量与自然搜索排序位置。简单来讲,就是帮助搜索引擎更好地发现、理解我们的网页,获取更多免费自然流量,让目标用户更容易找到网站内容。
什么是搜索引擎
搜索引擎是一套检索技术,接收用户查询需求,依靠特定算法与策略从互联网抓取信息,再将匹配的结果返回给用户。它会把全网采集到的网页信息和用户搜索词做匹配,输出相关性结果。
搜索引擎依托网络爬虫、检索排序、网页处理、大数据处理、自然语言处理等多项技术,核心由两大部件构成:
- 搜索索引:网页信息的数字图书馆,存储经过整理、解析后的全网网页数据。
- 搜索算法:负责匹配用户查询、计算网页排名的计算机程序。
市面上主流搜索引擎包括百度、Google、必应(Bing)、搜狗等;百度在国内市场占有率最高,Google 是全球使用范围最广的搜索引擎。
网络爬虫(蜘蛛、机器人)
网络爬虫是一套自动从互联网抓取网页数据的程序。爬虫本质上就是发送 HTTP 请求,它和浏览器同为网络客户端:浏览器由人工手动访问网页;爬虫依靠程序自动遍历链接,批量下载网页,构建互联网内容镜像备份。
网络爬虫工作流程
- 选取一批种子 URL,放入待抓取队列;
- 从队列取出 URL,解析 DNS 获取服务器 IP,下载网页内容,存入已下载网页库,同时标记该 URL 为已抓取;
- 解析当前页面内全部超链接,把新发现的 URL 放入待抓取队列,循环往复持续抓取网页。
网络爬虫是搜索引擎最核心的数据来源,爬虫的抓取质量直接决定搜索引擎内容库的丰富度、信息时效性。搜索引擎依靠爬虫采集网页,为后续建立索引提供原始素材。
爬虫现状:现代网页大量使用 AJAX、Web 2.0 动态渲染技术,单纯的静态抓取无法拿到 JS 渲染后的内容。爬虫需要具备 JS 解析、DOM 事件处理、动态内容抽取的能力。Google 爬虫会执行 JS,但存在渲染排队、超时限制,完全客户端渲染的 SPA 页面会出现收录延迟问题。
搜索引擎工作流程
搜索引擎不会实时遍历全网网页来响应用户搜索,而是提前处理网页,构建索引数据库;用户搜索时,直接从索引库读取数据做匹配、排序。完整流程分为抓取、预处理、建立索引、检索排序四个阶段。
抓取网页(爬虫阶段):爬虫跟踪网页链接,从一个页面爬行到另一个页面,下载网页原始 HTML,存入原始页面数据库。抓取时会做重复内容检测;对于大量抄袭、采集复制的低质量页面,爬虫会降低抓取频次甚至放弃抓取。
网页预处理:对抓取回来的原始网页做清洗解析:提取文本内容 → 分词 → 过滤停用词 → 去除导航、广告、版权声明等噪音内容 → 构建正向索引、倒排索引 → 计算链接关系 → 处理 PDF、Word 等特殊文档。搜索引擎擅长解析文本类文件,能够索引 PDF、TXT、Office 文档;但图片、视频、Flash 无法直接识别内容,也不会自动执行复杂客户端脚本。
构建索引库:对清洗后的网页做数据分析与标引,按照字符、关键词、链接权重等维度分类,构建可快速检索的倒排索引数据库,同时计算网页的链接权重,页面之间的外链与内链关系是评估页面权威性的重要依据。
索引库检索与结果排序:当用户输入搜索词时,检索器在索引库快速匹配文档,评估文档和查询的相关度,按照算法规则对结果排序,最后把排序后的搜索结果返回给用户。同时还会挖掘用户行为数据,进一步优化检索体验。
搜索引擎排名的关键因素
各大搜索引擎的完整排名算法属于商业机密,Google 公开说明内容质量、外部链接是两大最重要的排名因素,坊间流传 Google 存在 200+ 排名信号,但并未完整公开全部清单。
已知核心维度:
- 外链质量:指向页面的外部网站数量与站点权威度,高质量外链代表行业对页面的信任;垃圾外链反而会带来负面效果。
- 内容相关性:页面内容匹配用户搜索意图,关键词合理分布,不是简单的关键词重复堆砌。
- 内容新鲜度:信息是否为最新;对时效性内容,该指标权重更高。
- 话题权威性:网站在所属领域的专业可信度。
- 页面性能:页面加载速度,包含 Core Web Vitals 等用户体验指标。
- 移动友好性:移动端页面布局适配,移动端现在是流量主要来源。
SEO 实现流派
按照是否符合搜索引擎官方指南,SEO 分为白帽、黑帽、灰帽三类,三者风险和收益周期差异很大。
- 白帽 SEO:完全遵循搜索引擎官方规范,依靠优质内容、合理技术架构、真实外部推荐提升排名。见效周期较长,但效果稳定,不会触发处罚,是长期项目的首选方案。
- 黑帽 SEO:使用作弊、投机手段。比如关键词堆砌、隐藏页面、垃圾外链、刷流量、桥页等,追求短期排名暴涨。一旦被搜索引擎识别,会直接降权或从索引中彻底移除,前期所有投入全部作废。
- 灰帽 SEO:处于白帽、黑帽的中间灰色地带。不完全违反明确规则,但也不完全遵从最佳实践,存在一定风险,追求短期收益与长期效果的折中,需要自行承担被算法打击的风险。
从工作维度划分,SEO 又可以分为技术优化、内容撰稿、声望建设(外链):
- 技术:HTML 语义标记,保证爬虫可以顺利抓取、解析需要被收录的页面;
- 撰稿:使用目标用户真实搜索词汇创作内容,文本、多媒体配合,让爬虫读懂页面主题;
- 声望:其他权威站点对本站点的外部链接,代表网站的行业可信度。
SEO 核心工作方向
完整的 SEO 体系分为四块:
- 关键词研究;
- 页面 SEO(站内页面优化);
- 链接建设;
- 技术性 SEO;
关键词研究
挖掘目标用户真实的搜索词;评估每个词的搜索流量与排名竞争难度,指导后续内容创作方向。
页面 SEO(站内页面优化)
对网页可见内容、HTML 源码进行优化,提升单页在搜索结果中的表现。
内容优化:
- 相关性:内容匹配用户真实搜索意图,是页面 SEO 的核心;
- 全面性:覆盖用户搜索该问题时希望获取的全部信息;
- 唯一性:提供区别于其他网页的增量信息,拒绝简单复制粘贴;
- 清晰度:行文通顺,阅读体验友好。
HTML 源码优化:
TDK(title、description、keywords)元标签:三者权重依次降低;现代搜索引擎对 keywords 元标签已经几乎不参与排名计算。
title:页面标题,突出页面核心主题,重要关键词不宜重复超过 2 次,每个页面标题应当独立不重复;description:页面摘要概括,控制合理长度,用于提升搜索结果点击率,禁止大量堆砌关键词;keywords:列举少量页面核心关键字即可,不建议大量罗列。
HTML 语义化标签:遵循 W3C 标准,使用
header、footer、section、aside、article、nav等标签,帮助爬虫理解页面结构。<a>链接标签:页内链接增加title属性,说明链接目标;出站外部链接添加rel="nofollow",告诉爬虫不要传递权重给外部目标页面。- H1-H6 标题层级:
h1拥有较高权重,一个页面只保留一个h1,用于页面主标题;h2用作二级小标题可重复;h3-h6严格按层级嵌套,禁止断层跳级。 - 图片标签属性:非装饰性图片,必须填写
alt属性,向爬虫描述图片内容;title属性可作为鼠标悬浮提示。 - 文本排版标签:
strong、em用来标记重点内容,搜索引擎会给予一定权重;尽量避免使用语义弱的<b>、<i>;换行只使用<br>;表格标题使用<caption>。 - 其他细节:
- 文本缩进使用 CSS,不要使用
;版权符号直接使用字符©,不用实体符号; - 谨慎使用
display: none,爬虫会忽略该方式隐藏的页面内容; - 重要业务 HTML 靠前放置,爬虫从上往下解析,部分爬虫存在抓取长度上限;
- 重要内容不要完全放在 JS、iframe、Flash、视频内,爬虫难以提取;
- 做好 404 页面:友好的 404 页面让爬虫可以继续抓取网站其他页面,不会直接终止抓取流程;
- 结构、样式、行为三者分离,保证 HTML 文档干净,内容丰富。
- 文本缩进使用 CSS,不要使用
链接建设
分为内部链接与外部链接(外链)。
- 内部链接:网站页面之间互相链接,引导爬虫遍历全站,分配站内权重;内部链接不建议滥用 nofollow。
- 外部链接:外部其他网站指向本站的链接,高质量外链可以提升网站权威度;垃圾外链会带来负面风险。友情链接属于外链建设的一种手段。
技术性 SEO
技术 SEO 的目标:帮助搜索引擎爬虫顺利找到、解析、收录网站页面。
- 控制抓取与索引权限
robots.txt:放置在网站根目录,用于告知爬虫哪些路径可以抓取、哪些不要抓取。注意:robots.txt 只是禁止抓取,不等于禁止索引;页面即便禁止抓取,如果外部有外链,依旧可能被搜索引擎收录。noindex:想要让页面不出现在搜索结果,使用<meta name="robots" content="noindex" />HTML 元标签,或设置 HTTP 响应头X-Robots-Tag: noindex。只有爬虫可以访问页面,才能读取 noindex 指令。
网站地图 sitemap.xml:网站地图罗列网站重要页面 URL,帮助爬虫发现孤立页面(页面没有任何内部链接指向)。Google 官方说明,sitemap 是仅次于链接发现的第二大 URL 来源。生成 sitemap 后,可以写进 robots.txt,同时提交到搜索引擎站长平台。
强制使用 HTTPS:HTTPS 加密传输,自 2014 年起 HTTPS 已经是搜索引擎排名信号;HTTP 全部做 301 重定向跳转到 HTTPS。
扁平化网站目录结构:页面目录层级尽量少;中小型网站建议目录层级不要超过三级,层级过深会降低爬虫抓取意愿。
网站速度优化:网站加载速度是重要排名因素;页面加载超时爬虫会直接放弃抓取页面。
多语言多地区站点 hreflang:
hreflang属性用于标记页面不同语言、不同地区版本,帮助搜索引擎分发对应地区用户的页面结果。处理重复内容:识别并处理网站重复、高度相似页面,使用
canonical规范标签指定页面权威版本,避免多个页面互相竞争排名。修复孤立页面:网站内部没有任何内链指向的页面,爬虫很难发现,要么增加内部链接,要么加入 sitemap。
小结
SEO 不是一次性完成的工作,属于持续性运营工作。
白帽 SEO 的核心逻辑是:做好底层技术让爬虫可抓取;产出匹配用户搜索意图的优质内容;通过真实外部链接积累网站权威,从而持续获取自然搜索流量。
同时需要借助搜索引擎站长平台持续监控收录、索引、排名变化,及时发现问题。