平时讨论 URL 发现,默认说的是 HTML 页面:首页点进去、栏目页展开、Sitemap 列出来。但站点里还有另一类地址——图片、PDF、视频、音频等附件。它们同样有 URL,也会进入抓取队列,只是发现路径和普通页面不太一样。
资源 URL 从哪里被看到
搜索蜘蛛发现资源地址,主要靠几个入口,优先级和页面类似,但更依赖“被引用”这件事。
- 页面里的 img src、video src、source srcset,解析 HTML 时直接拿到。
- 指向资源的链接,比如 a href 指向某个 PDF,会被当作普通链接处理。
- 图片和视频 Sitemap 扩展,主动声明资源与所属页面的关系。
- 站外引用或直接提交,量少但存在。
对多数站点来说,前两项承担了绝大多数资源发现工作。资源 Sitemap 是补充,不是替代。
页面内引用是最稳的入口
只要资源出现在 HTML 的 src 或 href 里,抓取路径就成立。实际操作中有两点容易被忽略。
懒加载别把地址藏起来
很多图片用 data-src 占位,真正的地址由脚本在滚动或进入视口时写入 src。搜索蜘蛛执行脚本的能力有限,尤其在大批量页面里。比较稳的做法是首屏图片用原生 src,非首屏保留 noscript 或至少让 src 在服务端渲染时就存在。
别用重定向绕路
把图片地址先跳到 CDN 再跳一次,会让抓取多走一步,也可能因为中间响应慢被放弃。资源地址尽量一步到位,减少不必要的跳转。
资源型 Sitemap 怎么用
图片和视频可以在页面 Sitemap 里用扩展标签声明,也可以单独放一个资源较多的页面 Sitemap。它解决的是“页面被发现了,但资源没被解析到”的情况。
- 图片 Sitemap 需要给资源的绝对 URL,并挂在对应的页面 URL 下。
- 视频 Sitemap 除了地址,还要填缩略图、时长等基础信息。
- 资源 Sitemap 的 url 数量不要超过常规限制,分片逻辑和普通 Sitemap 一致。
Sitemap 只负责告诉蜘蛛“这里有个资源”,能不能被选用,仍取决于资源本身和页面上下文。
资源文件和页面是两种索引
图片通常进入图片搜索的索引,和页面索引分开;PDF 有可能被当作独立落地页出现在搜索结果里;视频则更多依赖承载它的页面。理解这一点对运营策略有帮助:图片优化重点在文件名、周边文字和页面主题;PDF 重点在标题、内容质量和是否值得作为单独入口。
独立域名和 CDN 上的资源
资源放在独立域名或 CDN 时,抓取会遇到额外变量。robots.txt 是否放行、DNS 解析是否稳定、响应时间是否够快,都会影响资源被抓取的概率。如果资源域名对搜索蜘蛛返回 403 或频繁超时,页面里的引用再完整也没有用。
用日志核对资源抓取
在服务器日志里按图片、PDF 后缀过滤,能看到蜘蛛是否真的来取过。重点看三个东西:状态码是不是 200、响应时间是否正常、同一资源是否被反复抓取却从不变化。如果资源长期不被抓,先回到页面 HTML 里确认地址是否真实存在。
资源 URL 的发现没有太多技巧,核心还是“地址能被解析到、服务器能正常响应”。把这两件事做稳,剩下的交给抓取节奏。