IP共享网站检测 - 判断采集是否遗漏的可执行清单

📍 WDQWDWQD987AAAAA:216.73.216.65
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /4353b4b042bf.html
📄

IP共享网站检测 - 判断采集是否遗漏的可执行清单

判断采集是否遗漏,不能只看采集程序有没有报错,而要把“采集端记录”“目标站实际返回”“入库结果”三条证据链对齐。具体做法是:先固定一批已知存在的样本页面,再用不同IP与请求方式复核,最后对比采集日志和数据库记录。只要某一步的样本对不上,就说明存在遗漏,而不是采集任务整体成功。

先建立可核对的样本集

要查的是:目标站上你确定存在的页面清单。怎么查:从站点地图、栏目分页、站内搜索结果或已知文章ID中,人工整理出30到50条样本,覆盖首页、列表页、详情页和最后一页。结果说明:如果样本本身不完整,后续判断就没有基准。样本要记录URL、预期标题、预期正文特征,最好包含少量分页末尾和带参数的页面。适用条件是目标站结构相对稳定;如果目标站频繁改版,样本集要每次诊断前重建。

核对采集请求是否真正到达目标站

要查的是:采集程序发出的请求,目标站是否返回了正常内容。怎么查:在采集日志中记录每次请求的URL、状态码、响应长度和耗时;再抽取若干条,用相同IP和不同IP分别手动请求,比较返回内容。结果说明:如果同一URL在采集日志中状态码为200,但响应长度明显偏短,可能是被返回了验证页或空壳页;如果换IP后内容完整,说明原IP可能被限制。这里要区分“可能原因”和“已经定位的原因”:状态码正常不等于内容完整,必须看响应体特征。

检查分页与列表页的边界

要查的是:采集是否只抓了第一页或前几页。怎么查:找到列表页的分页参数,手动访问最后一页和倒数第二页,确认页面存在;再查看采集记录中是否包含这些页码的URL。结果说明:如果最后一页没有被请求,说明分页终止条件设置过严;如果请求了但没入库,说明解析或去重环节出了问题。适用条件是列表页有明确分页;对于无限滚动页面,要改用接口请求或滚动加载记录来判断。

对比入库数量与预期数量

要查的是:数据库中的记录数是否与目标站可采集总量一致。怎么查:用目标站栏目计数、站点地图条目数或站内搜索命中数作为参考,与数据库按同一时间范围统计的结果对比。结果说明:两边数量差距较大时,先排除目标站本身包含重复URL、草稿或已删除页面;再检查采集端是否有去重规则误杀。注意第三方估算流量、搜索引擎报告与站内统计口径不同,不能只用某一个指标推断采集完整性。

用IP共享场景做交叉验证

要查的是:共享IP是否导致部分请求被区别对待。怎么查:准备两个不同出口IP,对同一批样本分别请求,记录状态码、响应长度和关键内容是否出现。结果说明:如果某个IP下部分页面返回验证页或空内容,而另一个IP正常,说明该IP的请求可能被限制,采集遗漏与IP环境有关。适用条件是你能控制或切换出口IP;如果无法切换,可以用请求头、访问频率和Cookie状态做替代对比。

可执行检查清单

  1. 查样本:整理30到50条已知页面,记录预期标题与正文特征。结果说明:样本缺失会让后续对比失去意义。
  2. 查请求:抽取日志中的URL,手动请求并对比响应长度。结果说明:长度异常偏短通常指向验证页或空壳页。
  3. 查分页:访问最后一页,确认采集记录中是否存在该页URL。结果说明:缺失最后一页说明终止条件有误。
  4. 查入库:按栏目统计数据库记录数,与站点地图或站内搜索命中数对比。结果说明:差距大时先排查去重和解析规则。
  5. 查IP:用两个出口IP请求同一批样本,比较返回内容。结果说明:内容不一致时,遗漏可能与IP限制有关。
  6. 查时间:确认采集时间窗口是否覆盖目标页面的发布时间。结果说明:时间范围设置过窄会漏掉新页面。

下一步,选取一个你怀疑遗漏的栏目,按上面的清单逐项记录证据。只要“请求到达”“内容完整”“成功入库”三件事不能同时成立,就继续往下查,直到定位到具体环节。

图1 图2

nginx