不少站点把重要信息做成图片、PDF 或者视频,頁面上看起来信息很足,但爬虫拿到的只是一堆文件名和没有解释的連結。抓取本身可能没出問题,可讀到的文字太少,後面的索引和展現就會受限。下面整理不同内容载体在收錄上的差別,以及可以补哪些文字。
爬虫讀的是文本,不是画面
爬虫拿到 HTML 後,會解析标簽、提取正文、识別連結。图片、视频、Canvas 画布,以及部分靠脚本插入的内容,都不會自動變成文本。也就是说,用戶眼睛看到的,和爬虫讀到的,可能是两套東西。
一個简單的判断方法:把頁面的样式和图片都關掉,剩下的文字能不能说清這頁在讲什么。如果關掉之後几乎是空白,這頁進入索引的难度通常比較大。
图片里的文字:靠 alt、图注和周邊正文补
價格表、流程图、活動規則這類做成图片的内容,图上的字不會被直接讀取。能帮上忙的主要是這几處:
- alt 属性:用一句话說明图片内容,不要堆词,也不要寫成“图片1”。
- 图注與上下文:图片前後的正文段落,往往比 alt 更能說明它在頁面里的位置和作用。
- 文件名:有意义的名字比 IMG_2043.jpg 稍好,但作用有限,不值得過度優化。
如果一張图承担了核心信息,更稳妥的做法是在同一頁用文字把要点复述一遍,而不是只依赖 alt。
PDF、表格與附件:可以被索引,但有條件
主流搜尋引擎确實會索引 PDF 等文档格式,前提是能被正常抓取、内容可提取、体积不過大。常见毛病有三個:掃描件没有文字层,整頁等于一張图;文件太大,抓取被截断;文档本身缺少标题和基本信息。
- 掃描件加上 OCR 文字层,或者用 HTML 頁面重寫關键内容。
- 给文档起一個規范的标题,並在下载頁寫清楚文件里有什么、适合谁看。
- 下载地址保持稳定,避免每次生成有时效的临时連結。
- 重要的表格資料,尽量同时提供 HTML 版本。
视频、Canvas 與動態图表
视频要靠頁面上的文字支撑,比如标题、简介、要点和字幕;纯 Canvas 或图片渲染的图表,爬虫基本拿不到數值。折叠区域如果内容本来就寫在 HTML 里、只是被样式隐藏,通常還能讀到;如果必须先点击、由脚本再插入内容,那就属于渲染执行的問题,需要單獨排查。
把非文字内容翻译成可索引文字
不用把所有内容重新寫一遍,抓住重点即可:核心结论、關键資料、适用條件,用几句话寫在图文旁邊。用戶能快速了解,頁面也多了一段可讀文本。
要区分“抓取成功”和“進入索引”:爬虫来過、返回 200,說明抓取這一环没問题;頁面上缺少可讀文字,問题往往出在後面的内容判断环节,日誌里不一定看得出来。
自查顺序
- 關閉图片和样式,看頁面還剩多少有效文字。
- 核心图片是否有 alt,图片前後是否有說明。
- PDF 和附件能否直接打開、是否带文字层、体积是否過大。
- 下载頁是否用文字描述了文件内容。
- 重要信息是否只存在于视频或画布里,需要补寫文字版。