搜索抓取

移动端 HTML 抓取核对:正文、链接与资源是否齐备

搜索引擎大多以移动端 HTML 作为抓取与判断的主要来源。移动端页面若在正文、内链或资源加载上与桌面端不一致,蜘蛛拿到的信息就会缩水。本文梳理三类常见的不对等,以及独立移动站与动态服务的核对点,并给出用移动 UA 取源码、对比 HTML、检查屏蔽规则与抓取日志的实操流程。

搜索抓取

移动端 HTML 抓取核对:正文、链接与资源是否齐备

多数搜索引擎现在以移动端 HTML 作为抓取和判断的主要依据。这意味着同一个 URL,如果移动端页面比桌面端少了一段正文、少了几条内链,蜘蛛拿到的信息就与用户看到的、以及站长自己预期的版本不一致。核对移动端 HTML 的完整度,是抓取质量检查中容易被跳过的一步。

移动端 HTML 成为抓取基准之后

过去站长习惯在桌面浏览器里检查页面,看到的内容自然是完整的。但抓取请求携带的 UA 是移动设备,返回的是移动端 HTML,服务端可能根据 UA、Viewport 或 Cookie 做差异化输出。差异一旦存在,桌面端看到的“好页面”与蜘蛛实际拿到的页面就会分叉。

所以核对的第一步不是看页面好不好看,而是确认抓取请求返回的 HTML 与目标版本是否一致。

三类常见的不对等

正文内容不对等

部分站点在移动端折叠或省略了长描述、参数表、常见问题区块,只保留标题和价格。用户点开“展开”仍然能看到,但初始 HTML 里没有这段文字。如果这些内容对页面主题很关键,蜘蛛抓到的就是一个信息更少的版本。

链接可见性不对等

移动端常把导航收进汉堡菜单,把相关推荐做成需要滑动才出现的列表。如果这些链接只存在于交互后的 DOM,而不是初始 HTML 的 a 标签里,抓取路径就会明显变窄。核对时可以直接查看移动端 HTML 源码,统计首页到详情页之间真正可用的链接条数。

资源与样式被屏蔽

为了移动端速度,有的站点在 robots.txt 里屏蔽了 CSS、JS 或图片目录。屏蔽样式表会让蜘蛛看到一个结构混乱的版本,屏蔽脚本则可能让依赖渲染的内容整体消失。为节省移动流量而做的取舍,未必适合抓取环境。

独立移动站与动态服务的核对点

  • 独立移动站(如 m. 子域)需要有正确的对应关系,避免桌面 URL 与移动 URL 内容脱节。
  • 移动 URL 不应叠加无意义的跳转链,也不要对蜘蛛返回与用户不同的重定向目标。
  • 动态服务(同一 URL 按 UA 返回不同 HTML)要保证两版的核心信息一致,包括标题、正文与主要链接。
  • 检查移动端页面有没有桌面端不存在的 noindex 或屏蔽规则。

核对流程

  1. 用移动 UA 请求目标 URL,保存返回的原始 HTML,不要用浏览器渲染后的结果。
  2. 对比移动端与桌面端 HTML 中的正文段落数、a 标签数量与主要标题文本。
  3. 检查 robots.txt 是否屏蔽了 CSS、JS、图片路径。
  4. 抽样若干详情页,确认初始 HTML 里是否存在指向其他页面的链接。
  5. 在服务器日志里查看移动 UA 的抓取频次与状态码,判断移动版本是否被正常抓取。

容易忽略的一点

移动端体验优化与抓取友好并不冲突,冲突的是“只在交互后才出现”的内容。把关键正文与内链放在初始 HTML 中,再在此基础上做样式与交互增强,两条线可以兼顾。

移动端 HTML 是当前抓取的主要输入。核对它的完整度,比反复打磨桌面端页面的细节更有实际意义。