Sitemap
Sitemap(也译作站点地图、网站地图)是用于描述网站域名下页面、文件等资源的列表文件,其核心作用是为网站访问者或网络爬虫提供网站的资源结构信息,辅助导航与内容抓取。在英文语境中,首字母大写的Sitemap通常特指XML格式的爬虫专用站点地图,而小写的site map则可泛指所有类型的站点地图[1]。根据面向对象的不同,Sitemap可分为面向普通用户的导航型站点地图,以及面向搜索引擎爬虫的结构化站点地图,其中XML格式的Sitemaps协议已成为主流搜索引擎通用的站点信息提交标准[2]。
| 其他名称 | 站点地图、网站地图 |
|---|---|
| 初始发布 | 2005年6月 |
| 协议版本 | 0.9 |
| 支持格式 | XML、HTML、TXT等 |
| 开发者 | Google、Yahoo!、Microsoft |
类型
Sitemap根据设计目标与使用对象的不同,主要分为三类:
规划型站点地图
这类站点地图是网站设计师在网站开发规划阶段使用的原型文档,用于梳理网站的页面层级与功能结构,辅助开发团队明确网站的整体架构,不会对外发布。
用户可见站点地图
这类站点地图通常以HTML页面的形式呈现,以层级化的列表展示网站的重要页面链接,面向网站的普通访问者,帮助用户快速定位所需内容,同时也可辅助网络爬虫了解网站结构[3]。部分站点会采用按字母排序的索引式站点地图,作为层级化站点地图的补充。
爬虫专用结构化站点地图
这类站点地图是为网络爬虫(尤其是搜索引擎爬虫)设计的结构化文件,其中最主流的是XML格式的Sitemaps,此外也存在TXT格式的纯URL列表等形式。这类文件可以向爬虫明确告知网站内的可抓取资源,尤其适用于包含大量动态页面、无法通过普通链接被爬虫发现的网站[4]。在此基础上,还衍生出了图片Sitemap、视频Sitemap等特化类型,用于向搜索引擎提交网站内的多媒体资源信息。
XML Sitemaps协议
XML Sitemaps是目前应用最广泛的爬虫专用Sitemap格式,其对应的Sitemaps协议由Google主导制定,后成为各大搜索引擎共同支持的标准。
协议规范
Sitemaps协议规定,XML格式的Sitemap文件必须采用UTF-8编码,文件内的所有数据值需进行实体转义。文件中可包含每个URL的相关元信息,包括:
loc:资源的URL地址lastmod:资源的最后修改时间changefreq:资源的更新频率(仅作参考,部分搜索引擎已忽略该字段)priority:资源的相对优先级(仅作参考,部分搜索引擎已忽略该字段)
[5] 对于包含大量URL的网站,还可使用Sitemap索引文件,将多个Sitemap文件整合在一起提交,单个Sitemap文件最多可包含5万条URL。
示例
以下是一个简单的XML Sitemap示例,包含三个页面的信息: <source lang=xml> <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url> <loc>http://www.example.net/?id=who</loc> <lastmod>2009-09-22</lastmod> </url> <url> <loc>http://www.example.net/?id=what</loc> <lastmod>2009-09-22</lastmod> </url> <url> <loc>http://www.example.net/?id=how</loc> <lastmod>2009-09-22</lastmod> </url>
</urlset> </source>
历史
2005年6月,Google首次推出Sitemaps 0.84版本,旨在帮助网站开发者向搜索引擎提交网站内的链接列表,解决动态页面难以被爬虫发现的问题[6]。 2006年11月,Google、Yahoo!与Microsoft(旗下必应搜索引擎)共同宣布联合支持Sitemaps协议,统一了站点地图的标准格式,使得网站开发者只需提交一份Sitemap即可被所有支持该协议的搜索引擎识别[7]。此后,Ask等其他主流搜索引擎也陆续加入对该协议的支持,Sitemaps逐步成为搜索引擎优化(SEO)领域的标准工具之一。
- ↑ https://blog.csdn.net/qq3559727/article/details/52412742
- ↑ https://en.wikipedia.org/wiki/Site_map
- ↑ https://www.techopedia.com/definition/site-map
- ↑ https://en.wikipedia.org/wiki/Site_map
- ↑ https://support.google.com/webmasters/answer/183668
- ↑ https://en.wikipedia.org/wiki/Sitemaps
- ↑ https://www.oreilly.com/library/view/web-site-design/9780596527265/ch04s04.html