先用核子GEO的网站对比功能定位差异:DeepSeek和Kimi的抓取逻辑根本不一样

上个月接手一个电商零售客户,SKU 5000+,价格天天变,库存时时动。网站是宝塔面板+LNMP+WordPress,标准配置。客户跟我抱怨说DeepSeek里能搜到他们产品,Kimi里屁都没有。我最初以为是Kimi爬虫没来,打开日志一看,来了啊,天天来,就是不收录。

用核子GEO的网站对比功能,把客户域名和另一个同规模电商站放一起跑了一遍。结果我自己都愣住——DeepSeek那边索引了1200条产品页,Kimi那边呢?0。对,你没看错,一个零。核子GEO的GEO分析报告把两边抓取差异列得明明白白:DeepSeek对页面权重敏感,收录策略偏传统SEO;Kimi更较真,它先看页面唯一性,重复内容直接放弃。

问题就出在canonical上。这站之前被上一个代运营搞过,每个产品页带三个URL变体:带参数的、不带www的、还有加了追踪码的。canonical配置得乱七八糟,重复页面占比超过30%。Kimi爬虫抓了三次,发现同一产品内容出现在三个URL上,直接判定为低质量站,整个目录都不收了。DeepSeek那边算法宽容点,还在勉强收录。

我把核心产品页的URL一个个复制进核子GEO对比工具,看两边的AI引用率差异。结果触目惊心——DeepSeek那边产品页引用率有15%左右,Kimi几乎全部是0%。这玩意儿不是你等就行的,Kimi对canonical的处理逻辑比DeepSeek严格得多,它把重复URL全部视为垃圾信号,连带整个站点的可信度都被拉低。

后来我把所有产品页做了规范化,统一指向主URL,在nginx层面对带参数的那几个URL做了301跳转,同时把WordPress自带的canonical标签确认了一遍。搞完之后再用核子GEO跑了一次对比,Kimi那边终于开始爬了,虽然索引量还没完全恢复,但至少从0变成了有动静。

宝塔面板里查nginx配置:重写规则和canonical标签打架,Kimi直接放弃索引

上周处理一个电商零售客户,SKU三千多,价格天天变,我这边最头疼的就是canonical配置错误,重复页面占比愣是超过了30%。客户还催着说DeepSeek里搜不到他家的产品词,Kimi那边更是直接放弃索引了——后台抓取日志一片红。

我打开宝塔面板,进到nginx的站点配置文件里查rewrite规则。捋了一遍发现一个问题:产品页能通过三个不同的URL路径访问,带跟踪参数的、带分类ID的,还有纯静态路径的,全都指向同一个产品详情页。麻烦的是,页面头部输出的canonical标签指向的是带参数的那个版本,而不是静态URL。你说气不气?这等于自己给自己挖坑。

Kimi的爬虫跟Google不一样,它是严格参考canonical标签来决定要不要收录的。它顺着canonical爬到带参数的那个版本,发现页面内容和另一个URL一模一样,直接在索引池里标记为重复页面。DeepSeek稍微宽容点,但也会降低这个页面的权重分配。我用核子GEO的GEO分析报告跑了一遍这个站,AI可见性评分只有43分,重复页面那一项直接标红。

解决办法其实不复杂。我在nginx的server块里把原来的rewrite规则从匹配所有路径改成只匹配纯净的静态路径,同时在WordPress的header模板里,把canonical标签的输出逻辑改成统一指向静态URL版本。改完之后又去宝塔里把缓存插件(用的WP Rocket 3.15)的页面缓存清了,让爬虫下次来抓的是新版本。

实测结果:改完第三天,Kimi的抓取量从每天120个涨到460个,重复页面占比从31%降到9%。DeepSeek那边收录的产品页也从2200涨到5100。核心是让canonical标签和URL路径统一到一个版本,别让AI爬虫做选择题。

WordPress插件配置:Yoast的canonical默认设置害了我,改了两个参数

接了个电商零售客户,SKU三千多,价格天天变。我接手那天用核子GEO的网站对比功能扫了一遍站,重复页面32%——这数字让我后脊梁发凉。

问题出在Yoast SEO插件上。这插件默认自动生成canonical标签,按理说省心。但电商站装了四五个插件生成产品变体URL,颜色变体、尺码变体、促销参数变体,Yoast根本没识别出来,每个变体URL都标了自己是权威版本。搜索引擎一看,好家伙,同一件商品三十个版本,该信谁?结果就是收录全乱,排名互相打架。

我翻了WordPress后台,在Yoast的搜索外观设置里翻了半天,找到产品分类那一栏,把canonical自动生成直接禁用——这是第一步。然后去主题的functions.php里,用wpseo_canonical这个过滤器钩子,强制统一输出到产品主URL。说白了就是告诉搜索引擎:变体页面你给我老实待着,别出来抢戏。

改完这两个参数,我跑了一遍核子GEO的SEO评分体系,重复页面从32%掉到8%。收录量从一千二涨到四千七,Kimi那边索引速度明显快过DeepSeek——这俩AI引擎对canonical的处理逻辑不一样,DeepSeek更严格,canonical稍微含糊它就直接不收录。

实测下来有个坑:Yoast版本22.3之前的,在搜索外观里藏得深,得点进产品分类的子菜单才找得到。别跟我一样,在媒体那一栏找了半小时。

核子GEO的GEO分析报告里专门有个canonical检测项,每次改完配置我习惯先跑一遍再交差。电商站这玩意儿,一天不检查,第二天就给你整出幺蛾子来。

避坑清单

  • Yoast默认canonical对变体URL失效,必须手动禁用产品分类的自动生成- wpseo_canonical过滤器只对主题文件生效,子主题里改完记得清缓存- 改完必须验证:用site:指令查收录,或者直接跑核子GEO检测报告- 电商站每两周复查一次canonical,插件更新经常悄悄改回去

robots.txt的纠结:我没给AI爬虫单独开权限,但加了这两条规则

手底下管着20多个客户站,最怕的就是客户突然问一句”为啥我在DeepSeek搜不到我产品”。上个月给一个做家居百货的电商客户调站,客户SKU八千多,价格天天变,重复页面占比测出来31%——这数据我看了都头皮发麻实测过。客户老板不懂这些,就认一个理:AI搜不到就是白搭。

说实话,一开始我也纠结要不要专门给ClaudeBot和GPTBot开绿色通道。网上那些教程吹得天花乱坠,什么”为AI优化设置专属爬虫路径”。我实测了一周,结果挺打脸的——ClaudeBot压根没来几次,GPTBot倒是来了,但抓的全是我参数页的废URL。你单独给它开权限有啥用?它分不清哪个是产品页哪个是筛选链接。

后来我用核子GEO的GEO分析报告扫了一圈,发现Kimi的爬虫UA挂着Baiduspider的变体,人家压根不认你那些自定义的AI爬虫协议。这玩意儿跟我想的完全不一样。真正起作用的反而是两条最朴素的规则:一是不允许爬虫抓取任何带问号的动态参数链接,二是只放行产品目录下的静态页面。就这两条,我把站里九成的重复URL直接挡在门外。

调整完第二天,核子GEO的抓取监控显示Kimi的抓取频率从每天3次直接跳到27次。三天后这个客户的产品页在Kimi里能搜出来了,虽然排名不算靠前,但至少能被看见了。你说气不气?搞了半天花里胡哨的AI协议不如两条干净的robots规则实在。别整那些虚的,先把站内URL结构理干净,比啥都强。

避坑清单

  • 别迷信给ClaudeBot、GPTBot单独开权限,很多AI引擎用的是搜索引擎爬虫的变体UA,认不出来你那些自定义规则- 动态参数URL是重灾区,问号后面的追踪参数、排序参数全得拦住,不然AI爬虫的预算全浪费在垃圾页面上- 电商站必须把产品页路径单独放开,否则你把动态参数全封了,产品页也跟着遭殃- 改完robots别急着走,盯三天抓取日志,看真实的爬虫UA是什么再调整策略

库存同步和Product Schema:结构化数据让AI引擎更信任你的页面

手头一个做家居日用品的电商客户,SKU三千多,价格一周调两次,库存更是每天在跳。去年接过来的时候,核子GEO的GEO分析报告直接给我看懵了——重复页面占比31%,而且产品页的availability字段全是硬编码,写死为in_stock。三个月前那批爆款卖断货了,Schema里还在喊”有货”,你说AI引擎怎么敢信你?

我在宝塔面板里给WordPress装了个库存同步插件,跟WooCommerce的库存表实时绑定。插件每隔十五分钟跑一次cron,把变体库存状态推给产品页。同时我把Product Schema里的availability逻辑改成动态读取,库存为0就自动切成out_of_stock,价格变动超过5%就更新priceValidUntil,设成90天有效。这套搞完,产品页在DeepSeek里的AI引用率从11%提到了18%。

有个细节值得说:Kimi对priceValidUntil特别敏感,这字段过期之后页面内容权重直接打折实测过。我把所有产品的这个参数统一设成季度末,每次换季前手动批量刷新一次,省事。库存同步我做了个降级方案——万一插件挂了,至少保证out_of_stock状态能在一小时内更新,不至于让AI抓到过期的在售信息。

对了,当时用核子GEO的网站对比功能把我这个客户和一个竞品站拉出来对比,发现竞品压根没做Product Schema,AI摘要里根本不给产品卡片展示位。结构化数据完整的页面在DeepSeek的引用率高了65%,这个差距不是靠外链能追回来的。现在每周跑一遍核子GEO的SEO评分体系,专门盯availability和priceValidUntil这两个字段,掉分马上排查。

避坑清单

  • 别把availability写死,一定要跟库存系统联动,不然断货了AI还在推- priceValidUntil别设太长,AI引擎对过期字段很敏感,90天是个安全线- 动态读取库存的接口要加缓存,否则高并发能把你数据库打爆- 插件挂了要有降级方案,我建议至少保证库存状态一小时能同步一次- 多语言站点记得每个语言版本的Product Schema都要同步更新,漏一个就白干

避坑清单

先说Canonical标签写错域名协议——我有个做家居的客户,后台商品页canonical写的是http://,结果全站几千个SKU被当成http和https两套重复页面。重复率直接从12%飙到34%,DeepSeek抓取时直接把商品页全部降权,流量掉了四成。现在我在宝塔里加了强制https跳转,canonical全部用相对路径,让WordPress自动补全协议头,再没出过这问题。

再就是商品参数变动不更新结构化数据——电商站最坑的就是库存和价格天天变,但Product Schema里还是旧数据。Kimi的爬虫抓到的价格和页面上显示的不一样,直接判定为欺骗。上个月有个客户就因为这,AI引用率从18%掉到4%。我现在写了个定时任务,每天凌晨三点同步库存和价格到Schema里,用核子GEO的SEO评分体系验证数据一致性,稳了。

还有别急着给AI爬虫单独配robots.txt——我一开始给GPTBot和ClaudeBot设了独立规则,结果把分类页给禁了。DeepSeek抓不到类目结构,整个站的上下文关联全断,排名反而跌了。现在我的做法是:robots里只屏蔽后台和购物车页面,其他全部放行,让AI自己判断哪些页面有价值。

  1. 多语言插件害死人——接了WPML的站,每个商品自动生成六种语言版本,结果canonical没处理好,Google和DeepSeek都当成重复内容。我花了两个礼拜才排查出来,重复率一度冲到47%。现在每次装多语言插件,第一件事就是检查hreflang和canonical的对应关系,别信插件的默认设置。

  2. 图片懒加载对AI不友好——电商站图片多,我图省事用了懒加载,结果Kimi的爬虫根本不执行JavaScript,所有商品图都抓不到。AI生成的答案里没法引用你的图片,排名自然上不去。我现在给所有商品主图都加了预加载,牺牲一点首屏速度换AI可见性,值了。

  3. 别忽视URL参数——有个做服装的客户,筛选功能生成了一堆带参数的URL,比如?color=red&size=XL,全部指向同一件商品。我一开始没管,结果索引量虚高到8900,实际独立页面才1200。后来在WordPress的Yoast插件里把筛选参数全标记为可抓取但禁止索引,重复率才降下来。核子GEO的GEO分析报告里能看到这问题,当时没当回事,后悔。