事情本身不复杂,线索都在日志里。视频频道用自研播放器,mp4 地址由接口在点击后返回,页面源码里只有一个空的 video 容器,视频页上线两个月收录是 0。

这类报错背后常见的原因有几处,逐个排除就行。播放地址通过 XHR 获取,源码里没有可抓取的资源链接。还有一种是视频页没有 VideoObject 标记,搜索无法识别这是视频页。

少数情况下是详情页正文只有一句简介,缺少文字内容支撑。

动手时先确认源码里是否存在视频地址

curl -s https://www.example.com/video/1024 | grep -c '\.mp4'

接着把视频地址直接写进 video 标签

curl -s https://www.example.com/video/1024 | grep -o 'src="[^"]*mp4"'

补一段 VideoObject 标记

{"@context":"https://schema.org","@type":"VideoObject","contentUrl":"https://cdn.example.com/v/1024.mp4"}

提交带 video 标签的 sitemap

curl -s https://www.example.com/video-sitemap.xml | head -10

恢复的判定其实很直接。改完十天视频页开始被收录,搜索里出现带封面的视频结果,播放页的展现从零涨到日均四百。

容易忽略的是,播放器怎么实现都行,但首屏 HTML 里必须有一个真实可访问的视频地址,否则蜘蛛只看到空容器。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。

作者 9823189