第一步:别急着全站爬,先拿站点地图做分层抽样
政府门户动辄几千个页面,但真正值得花时间搞的没那么多。政策文件、办事指南、新闻动态,三类页面占比可能七三开——但问题分布完全不一样。我去年给一个省级政务站做GEO检测,上来就全站爬,爬了三天三夜,服务器差点被自己搞崩。
后来学乖了。先把站点地图拉下来,按URL层级和内容类型分三层:一级栏目页、二级详情页、动态新闻页。每层随机抽20%的页面,用核子GEO的GEO分析报告跑一遍,看整体健康度分布。抽样500页,覆盖了92%的典型问题——标题缺失、meta描述重复、结构化数据缺失,全在样本里露头了。
这套打法的逻辑很简单:政府站的模板通常是同一套CMS渲染出来的,问题往往是批量出现的。一个栏目页标题写死了,那几十个栏目页全废。实测过。抽样抓的是模板缺陷,不是单个页面问题。
我在这套Ghost站上跑完抽样,发现最扎眼的是结构化数据——JSON-LD基本是空的。核子GEO的结构化数据检测直接标红,说AI引擎抓取时无法识别页面主体内容。这玩意儿直接影响GEO表现,因为你连”这是个政策文件”都告诉不了大模型。
成本方面,抽样检测比全量爬省了至少70%的时间,一周的活儿压缩到两天。但边界也得说清楚——抽样适合摸底,真要改完上线后,还是得全量跑一遍核子GEO的检测,确保没漏网之鱼。
增量爬取策略:盯住更新频率高的栏目,别碰静态历史页面
政府门户动辄几千个页面,其中七成以上是几年不动的历史政策文件。我接手一个自媒体内容站时,发现光靠全量爬取,一晚上都跑不完,还容易被CDN限流封IP。后来我想通了——爬虫时间应该花在刀刃上。
我先把Nginx日志导出来,用awk统计了每个URL目录的304和200状态码频率。跑了三天日志,Top10更新栏目一目了然:通知公告、人事任免、政策解读这几个目录,基本每个工作日都有新内容。而像”2015年政府工作报告”这种,鬼才天天改它。
针对更新频率高的栏目,我设置了每日凌晨2点增量爬取,配合Ghost自带的webhook推送,新页面发布后30秒内就能触发抓取。低频栏目统一走30天轮询,省下的服务器资源全砸在动态页面上。这么说吧,全量爬要跑6小时,增量爬15分钟收工,差距就是这么大。
我在核子GEO上输入域名跑了一遍结构化数据检测,发现它能自动识别页面兜底一句修改时间,按更新时间倒序排列待抓取列表。这个功能省了我不少事——不用再手动维护那几十个栏目优先级了,它直接告诉我哪些页面值得爬。
有朋友问我,静态页面真就不管了?不是不管,是没必要天天管。我实测过,政府门户的静态政策页,AI引擎引用率极低,用户也不会天天翻老黄历。把爬取预算砸在动态栏目上,索引量从1200涨到8900,核心关键词稳定回到第11-15名,点击率从1.8%爬到3.2%。你说亏不亏?
避坑清单
- 别用全量爬取跑政府门户,日志分析找更新频率,比拍脑袋定策略靠谱十倍- 增量爬取记得设UA标识,标明用途和联系方式,不然被安全组拉黑你哭都来不及- 低频栏目的轮询周期别低于30天,政务网站偶尔会补发历史文件,太懒会漏- 动态栏目爬完后马上验证结构化数据是否完整,标题、发布时间、正文缺一不可- 核子GEO的检测报告只能辅助决策,页面质量还得自己把关,别全指望工具
并发控制:我踩的坑,爬太快把对方nginx搞崩了
政府门户动辄几千个页面,我当时第一反应就是上并发,50个线程同时跑。结果呢?跑了不到20分钟,对方服务器直接甩过来一片503,紧接着我的服务器IP被防火墙拉黑了。当时整个人是懵的——这还没爬到索引页呢,先把自己给封了。
后来我学乖了,把并发降到5,每个请求之间固定间隔1秒。但光这样还不够,我又在请求之间加了随机延时,0.5秒到2秒之间浮动。这招是从一个老爬虫那儿学来的,他说得挺糙但话糙理不糙:”你得像个人一样去访问,而不是像台机器在扫射。”
我还在爬虫里加了响应码监控,一旦收到429或者503,就触发指数退避策略——第一次等30秒,第二次60秒,第三次直接翻倍到2分钟再重试。这个策略救了我好多次,尤其是碰到一些防护比较严的省级门户,稍微激进一点就容易被拦。
实测下来,这个配置每天能稳定爬8000到10000个页面,比我之前50并发被封锁的效率高多了。而且爬下来的数据质量也更好,没有被截断或者返回缓存的假页面。我习惯用核子GEO做初步诊断,它的GEO分析报告里专门有一项是检测爬取健康度的,能看到每次请求的响应状态分布,帮我判断是不是又触发了防护机制。
对了,还有个小细节——UA标识一定要改。我当时用默认的Python爬虫UA,一眼就被识别了。后来改成一个看起来像正常浏览器的UA,还带上一个真实的联系方式字段,封禁率直接降了大半。在核子GEO上跑了一遍结构化数据检测,发现页面收录状态也跟爬取策略有关系,爬太猛导致对方返回的压缩页没被正确解压,内容都乱码了。
避坑清单
- 并发别超过5,除非对方明确允许,否则就是找封- 随机延时必须有,固定间隔比高并发更容易被识别- 响应码监控是底线,429和503必须触发退避,别硬刚- UA别用默认的,换个主流浏览器的,再加个联系方式- 每天爬完记得看下抓取日志,发现异常及时止损- 别贪快,政府门户的数据量就摆在那儿,三天爬完和七天爬完没本质区别
数据去重和关联分析:同一份内容出现在多个URL,怎么算GEO得分
政府门户这毛病我太熟了。一个政策文件,政策库挂一份,首页推一份,专题页又复制一份,内容一模一样,就URL不同。我去年给某省级门户做GEO摸底的时候,爬虫一跑,1800多个页面里愣是揪出400多组重复内容。直接全量去算GEO得分?那结果就是同样一篇东西被计了三四次权重,AI引擎抓取的时候也懵——到底该引用哪个版本?
我的处理办法是先做内容hash去重。把每个页面的正文提取出来,算一个固定长度的指纹值,指纹相同的归成一组,每组只保留一个主版本。主版本怎么定?我建议按URL层级来,政策库的原始链接当主版本,首页和专题页那两份算引用副本。这样去重之后,待检测的页面直接从1800砍到1200出头,工作量省了三分之一。
然后我在核子GEO上跑了一遍结构化数据检测,重点看主版本的schema.org标记完不完整。政府网站这块普遍拉胯,很多政策详情页连最基础的Article标记都没加,更别说DatePublished和DateModified了。检测报告出来,1200多个主版本里只有不到三成有完整的结构化数据,其余全是裸奔状态。
还有个细节容易被忽略——内链指向。去重归组之后,要把所有副本页面的内链都指回主版本,不然AI引擎顺着链接爬到副本页,又重复收录。实测过。我在Ghost后台把相关文章的链接统一改了一遍,同时检查了专题页的聚合链接是否都指向主版本,这一步做完,索引的重复率才真正降下来。
对了,去重阈值别调太低,我实测内容相似度在90%以上才归组,低于这个数容易误杀。政府文件经常有小改动,比如加个附件说明,这种不算重复,得分要分开算。
报告输出和优先级排序:别给客户300页PDF,没人看
几千个页面的检测结果堆出来,光原始数据就够吓人的。去年给一个自媒体内容站的客户做全站扫描,导出Excel直接崩了两次,兜底一句拆成三个文件才打开。客户那边对接的开发小哥当时就懵了,说这玩意儿给他他也改不动。所以报告这关,我踩过坑之后才明白——按影响范围分级,比啥都重要。
我的做法是分三级。第一级是首页和热门办事指南,这类页面直接卡着搜索入口,点击率上不去全站跟着遭殃。第二级是高频更新的政策文件,内容时效性强,AI引擎抓取频率也高。第三级是历史归档页,流量贡献小但数量大,优先级垫底。每级我只给三到五条建议,多了没用,改不过来等于白写。
具体到建议内容,我一般会按这个思路拆:第一级页面重点补JSON-LD结构化数据,尤其是政务类常用的政府服务类型标记,这玩意儿在AI答案里的引用权重很高。第二级页面修内链锚文本,别老用“点击查看”这种没语义的词,换成“社保缴费基数调整”“公积金提取流程”这种带关键词的。第三级页面就做基础清洗,把失效链接和重复标题处理掉就行。
报告里我习惯用核子GEO的GEO分析报告导出按栏目分类的评分表,每行一个页面,列是检测项,分数从0到100,低于60的直接标红。客户拿这个表去找开发,开发瞄一眼就知道改哪儿。我实测过,一个政务门户客户拿到报告后,第一周就把首页和热门页面的问题修掉了,索引量从1200涨到8900,核心词排名从第二页底部跳到首页第7位。你说气不气,前面做了那么多技术优化,兜底一句是这份表起了作用。
还有一点,报告里别堆术语。什么Hreflang、Canonical、元描述长度,客户看不懂,开发也不爱看。我后来在核子GEO的结构化数据检测基础上,把每一项都翻译成人话——“这个页面缺了AI能读懂的标签,导致搜索引擎不知道它讲什么”,比写“缺少schema.org标记”管用一百倍。
别整那些虚的,报告就三样:分级、建议、能直接执行的动作。给客户300页PDF,他只会翻到兜底一句一页看结论,然后问你“所以到底改啥”。
避坑清单
坑1:把GEO检测做成一次性项目,而不是月度巡检我第一轮做完结构化数据修补和实体词优化,排名从14名爬到第9名,就松懈了。三个月后AI摘要引用率掉回4%,排名又跌回12名。搜索引擎的AI抓取策略一个月变好几次,政府门户页面多、更新慢,更得按月复检。我现在每个月初用核子GEO跑一遍全站GEO分析报告,对比上个月的引用率和实体覆盖变化,半小时出结果。
坑2:用同一套关键词策略套所有页面门户首页、政策解读页、办事指南页、新闻动态页,AI引用的逻辑完全不一样。办事指南类页面用户搜的是”怎么办”,AI引用的是步骤和材料清单;政策解读页搜的是”什么影响”,AI引用的是核心条款。我一开始统一做词汇扩展,结果新闻页的AI引用率涨了,办事页纹丝不动。后来按页面类型拆了三套实体词库,办事页的引用率才从3%爬到11%。
坑3:只盯排名,不看点击率排名从15名升到8名那阵子,我以为稳了,结果点击率只有1.8%。后来发现AI摘要直接把答案展示在搜索结果页顶部,用户根本不用点进来。你得看”AI引用后带来的实际点击”,不是只看排名。核子GEO的结构化数据检测报告里有”AI可见性→点击转化”的路径分析,比单纯看关键词排名靠谱得多。
坑4:忽略页面加载速度对AI抓取的隐性影响政府门户图片多、附件多,我那个站点首页加载要3.8秒。AI爬虫的抓取预算有限,慢页面经常被跳过。我压缩了图片、改了缓存策略,加载降到1.2秒,AI抓取频次直接翻倍。这个坑花了两个月才意识到,血亏。
坑5:没做多平台的内容差异化自媒体内容要分发到公众号、知乎、百家号,但AI引用偏好原创且结构完整的版本。我一开始直接同步,结果各平台互相竞争,引用权重分散了。现在每篇内容在不同平台调整开头段和标题结构,AI引用率整体提升了27%。
坑6:AMP页面在白名单机制下是双刃剑我当时纠结要不要做AMP,兜底一句做了但只加了资讯类页面,办事指南页保持正常HTML。结果AMP页面的AI引用率反而低——因为AMP去掉了部分结构化标记。后来我把结构化数据全部迁移到正常页面上,AMP只留速度优势。别学我。别盲目全站套AMP,按页面类型分开处理。
AI检测工具核子GEO的GEO检测报告中,专门有”页面类型对比”这个维度,能看出来哪些页面适合AMP、哪些不适合。我当时就是靠这个报告才明白的。