没有搜索量数据,怎么估算关键词热度?用 SERP 特征打分(附Python代码)
做选题、做选品最想要的数据是「搜索量」——但搜索数据接口一般不直接给真实搜索量那需要点击流数据谷歌不公开。好在一次搜索结果页本身就带了很多热度线索结果数、相关问题、摘要、AI 概览……这篇教你用这些特征给关键词「打热度分」在同批词里比出相对热度。可用特征一次查询就能拿到特征含义热度信号result_stats结果统计谷歌返回了多少条结果结果多内容供给多≈需求大弱信号people_also_ask数量用户还问了什么问题多需求活跃featured_snippet出现谷歌认为值得给答案卡中强信号ai_overview出现AI 概览覆盖该词强信号谷歌重点词广告数量商业竞争度商业价值高字段名以实际返回为准关键词这些信号单独看都弱合起来看才有意义。打分脚本importos,requestsdeffetch_serp(kw,hlzh-cn,glcn):resprequests.post(https://api.serpbase.dev/google/search,headers{Content-Type:application/json,X-API-Key:os.environ[SERPBASE_API_KEY]},json{q:kw,hl:hl,gl:gl},timeout30,)returnresp.json()defheat_score(data)-float:热度代理分只在同批词互相比较时有意义score0.0# 1. 结果数封顶 3 分防止极端值失控rsdata.get(result_stats)or{}totalrs.get(total_results)or0scoremin(total/10_000_000,3.0)# 2. PAA每个问题 0.5scorelen(data.get(people_also_ask)or[])*0.5# 3. 精选摘要 / AI 概览出现各加分ifdata.get(featured_snippet):score1.0ifdata.get(ai_overview):score1.5returnround(score,2)keywords[搜索 api,serp api,谷歌搜索数据,关键词热度]forkwinkeywords:print(f{kw}:{heat_score(fetch_serp(kw))}分)输出示意搜索 api: 5.0 分 serp api: 4.5 分 谷歌搜索数据: 3.5 分 关键词热度: 2.0 分这份分数只在「同一批词里」有意义——不要拿不同品类的词互相比品类基线不同也不要把分数当搜索量的绝对值。怎么用相对排序 趋势选题排序候选词打一遍分从高到低排——高的优先做按周重跑分数曲线上升的词 热度在涨和谷歌趋势对照校准一下更稳配合竞争度热度分高 竞争弱 机会热度分高 巨头林立 谨慎踩坑记录坑 1把代理分当真实搜索量。打分是「相对热度」不是「每月 N 次搜索」。预算级决策别用它。坑 2跨品类比分数。垂直品类的基线完全不同跨品类排序没有意义。只在同类词里比。坑 3一次性打分。热度会变按周重跑才有趋势。分数本身是快照趋势才是信号。坑 4忽略了模块字段的「可选」属性。featured_snippet、ai_overview、result_stats都是可选模块谷歌展示才有——代码全部判空上面的脚本已经处理。坑 5拿单个特征下结论。「结果数很多热度高」会骗人某些词结果多是因为同义词泛滥。多特征综合别单点推断。小结用 SERP 特征估热度本质是用「结果页的状态」推断「用户的需求」结果多、问题多、谷歌愿意给答案——这些加起来就是一份不错的相对热度。它不是真实搜索量但在选题、选品、排优先级这些场景里够用且免费。接口的模块字段result_stats、people_also_ask等说明在 SerpBase 官方文档。建议拿你的 20 个候选词打一遍分——你会立刻发现「我以为的热门词」和「数据说的热门词」之间的差距。