第七章: SEO与渲染方式
第7章: SEO与渲染方式
在现代Web开发中,JavaScript扮演着越来越重要的角色。然而,JavaScript的广泛使用也为搜索引擎优化(SEO)带来了新的挑战。本章将深入探讨JavaScript SEO的核心问题,不同的渲染机制对SEO的影响,以及如何优化JavaScript驱动的网站以获得更好的搜索引擎排名和用户体验。
1. Google爬虫类型及其工作原理
搜索引擎爬虫是SEO的核心组成部分,了解它们的工作原理对于优化网站至关重要。本节将重点介绍Google爬虫,因为Google是当今最主要的搜索引擎。
1.1 Google爬虫的演变
传统爬虫的局限性 ️
早期的搜索引擎爬虫主要设计用于处理静态 HTML 页面。它们通过解析 HTML 文档的结构来理解页面内容,但对于 JavaScript 生成的动态内容却无能为力。这导致了许多 JavaScript 驱动的网站在搜索结果中表现不佳 。
现代 JavaScript 渲染爬虫的出现 ⚙️
为了适应 Web 技术的发展,Google 在 2015 年推出了能够渲染 JavaScript 的爬虫。这种新型爬虫能够执行 JavaScript 代码,从而更好地理解和索引动态生成的内容。这是搜索引擎技术的一个重大进步,为 JavaScript 驱动的网站提供了更公平的竞争环境 。
1.2 主要的 Google 爬虫类型
Google 使用多种专门的爬虫来索引不同类型的网络内容,以下是一些主流爬虫:
Googlebot(网页爬虫):这是 Google 的主要爬虫,负责抓取和索引网页内容。它有桌面版和移动版两种形式。
Googlebot Images(图片爬虫):专门用于发现和索引网络上的图片内容 ️。
Googlebot Video(视频爬虫):负责抓取和索引视频内容,包括视频元数据和缩略图 ️。
AdsBot(广告质量评估爬虫):这个爬虫用于评估 Google 广告的落地页质量 。
1.3 Googlebot 的工作原理
Googlebot 的工作过程可以分为三个主要阶段:
抓取阶段
在这个阶段,Googlebot 会访问网站并解析 HTML。通过解析 HTML,Googlebot 会发现页面中链接的其他资源,如 JS 文件、图片和其他 HTML 页面。它会选择性地下载资源,特别是那些影响页面布局的文件。️ 通常不会在这个阶段下载 JavaScript 文件或其他大型资源。
渲染阶段和下载阶段 ️
在这个阶段,Googlebot 会像浏览器一样执行 JavaScript 代码进行渲染。这个过程可能会延迟几秒到几天不等,具体取决于 Google 的资源分配和页面复杂度。
索引阶段 ️
渲染完成后,Googlebot 会分析页面内容,包括文本、图片、视频等,并将这些信息存储在 Google 的索引中。这个索引随后会用于响应用户的搜索查询 。
了解这些基本概念后,我们将在下一节继续探讨不同的网页渲染机制及其对 SEO 的影响 。
欢迎加入群聊,我们一起讨论一些更有趣的技术、商业、闲聊。
第七章: SEO与渲染方式的更多相关文章
- “全栈2019”Java异常第七章:try-catch-finally组合方式
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- SEO 第七章
SEO第七章 网站网址链接 路径优化 网站的网址路径分为相对路径和绝对路径 绝对路径:绝对路径是完整的路径,不仅可以在站内打开,去其他地方依然可以打开. 相对路径:不是一个完整的路径,这种路径只能在站 ...
- [GEiv]第七章:着色器 高效GPU渲染方案
第七章:着色器 高效GPU渲染方案 本章介绍着色器的基本知识以及Geiv下对其提供的支持接口.并以"渐变高斯模糊"为线索进行实例的演示解说. [背景信息] [计算机中央处理器的局限 ...
- [书籍翻译] 《JavaScript并发编程》第七章 抽取并发逻辑
本文是我翻译<JavaScript Concurrency>书籍的第七章 抽取并发逻辑,该书主要以Promises.Generator.Web workers等技术来讲解JavaScrip ...
- 精通Web Analytics 2.0 (9) 第七章:失败更快:爆发测试与实验的能量
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第七章:失败更快:爆发测试与实验的能量 欢迎来到实验和测试这个棒极了的世界! 如果Web拥有一个超越所有其他渠道的巨大优势,它就 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (38) ------ 第七章 使用对象服务之动态创建连接字符串和从数据库读取模型
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第七章 使用对象服务 本章篇幅适中,对真实应用中的常见问题提供了切实可行的解决方案. ...
- Java语言程序设计(基础篇) 第七章 一维数组
第七章 一维数组 7.2 数组的基础知识 1.一旦数组被创建,它的大小是固定的.使用一个数组引用变量,通过下标来访问数组中的元素. 2.数组是用来存储数据的集合,但是,通常我们会发现把数组看作一个存储 ...
- 第七章 LED将为我们闪烁:控制发光二极管
第七章 LED将为我们闪烁:控制发光二极管 本章我们将会看到一个完整的linux驱动程序,通过linux驱动程序控制LED的四个小灯,通俗的说就是通过向linux驱动程序来控制LED小灯的开关.用到 ...
- apue第七章学习总结
apue第七章学习总结 1.main函数 程序是如何执行有关的c程序的? C程序总是从main函数开始执行.main函数的原型是 int main(int argc,char *argv[]); 其中 ...
- [Effective Java]第七章 方法
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
随机推荐
- 解决Dcat Admin laravel框架登录报错问题,(blocked:mixed-content)
前言 在使用 Dcat Admin 后台登录时,发生 error 报错:(blocked:mixed-content) xhr VM484:1,浏览器拦截 其实这是浏览器在 HTTPS 页面中尝试加载 ...
- vscode运行js文件
一. 首先你需要下载安装 nodejs 下载地址 二. 在 VS Code中有一个插件 code runner,安装后可以直接运行在 node 环境中,然后就可以在 vscode 中输出文件的结果. ...
- php 过滤掉emoji表情
<?php function filter_emoji($str) { $str = preg_replace_callback( //执行一个正则表达式搜索并且使用一个回调进行替换 '/./u ...
- MySQL 常用优化
目录 单表优化 字段 索引 查询SQL 引擎 MyISAM InnoDB 系统调优参数 升级硬件 读写分离 缓存 表分区 分区的好处是: 分区的限制和缺点: 分区的类型: 分区适合的场景有: 垂直拆分 ...
- MySQL 8.0 误删了root用户怎么办
MySQL 8.0 误删了root用户怎么办 修改配置文件 修改配置文件,让其可以无账号登录 默认的文件为: /etc/my.cnf 添加:skip-grant-tables 重启服务 service ...
- BandiZip无广告版安装
BandiZip无广告版安装 Bandizip 是一款压缩软件,它支持Zip.7-Zip 和 RAR 以及其它压缩格式.它拥有非常快速的压缩和解压缩的算法,从大学用到现在,但是现在最新的版本在每次压缩 ...
- Windows Server评估版/正式版/数据中心版的来源及转换
评估版: 从微软评估中心下载的版本,相当于微软提供的试用版,可免费使用一段时间.但该版本无法使用 KMS授权或 MAS 永久授权进行激活. 正式版/数据中心版: 从微软许可证中心下载的版本已标识了GL ...
- DeepSeek 会话补全 API
DeepSeek 会话补全 API 是一个超强大的 AI 对话接口 ,可以让你: 打造自己的 智能聊天机器人 让 AI 帮你 写文章.改代码.编故事 甚至模拟 各种角色(比如猫娘.霸道总裁.科幻作家- ...
- windows 环境下vs code配置go mod 包管理进行开发,终于解决go mod 模式下可以编译运行,但引入包"github.com/gin-gonic/gin"的飘红黄波浪警告
最近在积极的转入go后端开发,学习gin的时候,能够编译运行,但是在improt github.com/gin-gonic/gin 波浪警告 当时忘记截图了,类似于这样的波浪警告 , 内容大概是&qu ...
- 在使用import win32api时,报错:No module named win32api
二.在使用import win32api时,报错:No module named win32api 网上查到有下面解决办法: pip install pypiwin32 或 pip3 install ...