欢迎来到合肥浪讯网络科技有限公司官网
  咨询服务热线:400-099-8848

如何收集用户的搜索历史?

发布时间:2026-06-02 文章来源:本站  浏览次数:6

核心原则:区分【本地存储(前端,不送服务器)】和【后端日志存储(全站统计)】;隐私合规优先,不强制采集,区分登录 / 未登录用户 两个目标: 1)个人搜索历史:给当前用户做个性化推荐(下拉框展示他自己之前搜过的词) 2)全站搜索日志:用来统计热门词、挖掘关联词、优化站内搜索(不绑定个人身份最佳)

一、两套采集方案分开实现

方案 A:前端本地存储 → 用于【当前访客个人搜索历史推荐】

适用:未登录访客,不用后端存用户个人记录,合规压力最小,中小企业官网首选

  • 存储载体:localStorage(推荐) / Cookie
  • 存储内容:仅关键词、搜索时间;不存 IP、手机号、姓名等个人信息
  • 逻辑流程:
  1. 用户点击搜索,提交关键词;
  2. 前端先做清洗:过滤空词、乱码、超长字符、黑名单词;
  3. 读取本地已有搜索历史数组;
  4. 去重:如果这个词已经存在,删除旧记录,把这条放到数组最前面;
  5. 控制条数上限(例如最多保存 8 条),超过就删掉最老的;
  6. 设置过期时间:例如 30 天,超过时间自动清除;
  7. 写回 localStorage;
  8. 用户再次点击搜索框,读取这个数组,展示【你的搜索历史】。
  • 用户可控:提供清除搜索历史按钮,点击直接清空 localStorage。
  • 局限:换浏览器 / 无痕模式 / 清除缓存后,历史直接丢失;不会上传到服务器。

示例存储结构(localStorage 里)

[
  {"word":"感应淬火设备","time":1759888000},
  {"word":"除尘设备","time":1759800000}
]

方案 B:后端日志采集 → 用于【全站数据分析、热门词挖掘】

目标:拿到所有用户的搜索行为,统计高频词、无结果词、共现词,不是为了追踪单独某个人 ✅ 推荐做法:匿名日志,尽量不绑定用户身份

  1. 用户提交搜索,前端把关键词发给后端搜索接口;
  2. 后端收到请求,先清洗过滤;
  3. 写入搜索日志表,推荐字段清单:

    表格

    字段 是否必填 说明
    search_word ✅ 用户搜索词
    search_time ✅ 搜索时间戳
    has_result ✅ 是否检索到内容:1 = 有结果,0 = 无结果
    click_id ⭕ 用户点击的文档 / 产品 ID(有点击才记录)
    device_type ⭕ PC / 移动端
    session_id ⭕ 会话 ID,临时标识一次访问,不关联实名信息,会话过期失效

❗不建议:直接记录 IP、手机号、账号、cookieid 和搜索词永久绑定(隐私风险高)

登录用户可选增强(个性化跨设备历史)

用户登录状态下,征得同意后,可把搜索词存入该账号下的搜索历史表;

  • 用户可以在个人中心查看、一键清空;
  • 退出登录 / 换设备登录,可同步历史记录;
  • 必须在隐私政策写明:收集搜索历史用于个性化搜索推荐,用户有权删除。

二、采集触发时机(什么时候记录?非常重要)

❌ 不要:输入框每敲一个字符、联想下拉点一下就记录,会产生大量脏数据 ✅ 推荐触发规则,二选一:

  1. 点击搜索按钮 / 回车提交搜索(最稳妥,推荐企业官网) 用户主动提交,才算一次有效搜索,才写入历史。单纯 hover 下拉联想不算。
  2. 可选增强:点击下拉推荐词发起检索,同样记录。

过滤规则(记录前必须执行,减少脏数据)

  • 空关键词、仅空格 → 丢弃,不记录
  • 字符过短(少于 2 个字符)、超长(>50 字符)丢弃
  • 黑名单词(违规词、垃圾广告词)直接拦截,不入库
  • 重复短时间高频提交(10 秒内同一词多次搜索,只记录一次)

三、隐私合规要点(国内网站必看)

  1. 未登录用户个人搜索历史优先放前端 localStorage,不上传服务器;
  2. 隐私政策中说明:网站会收集站内搜索行为数据,用于优化搜索功能、热门推荐;
  3. 用户控制权:
    • 本地:清除搜索历史按钮
    • 登录账号:个人中心可查看、删除全部搜索记录
  4. 不要把搜索词和手机号、实名信息做关联存储;
  5. 不主动把搜索日志对外共享给第三方。

四、简易版 vs 进阶版选型

✅ 简易版(中小企业官网,低成本,推荐)

只做前端 localStorage 保存个人搜索历史;后端仅记录匿名搜索日志(只存词、时间、有无结果,不带用户身份)

  • 开发量小、合规风险低;
  • 可实现:下拉展示用户本地搜索历史 + 后台统计全站热门词。

✅ 进阶版(流量大、会员系统网站)

简易版基础上增加登录用户账号绑定搜索历史,跨设备同步;后端统计会话、点击行为,挖掘共现词。

五、常见坑

  1. 采集联想输入每一次 keydown,日志暴涨,大量无效数据;
  2. 不做过期清理,localStorage 无限堆积;
  3. 没有清除按钮,隐私投诉风险;
  4. 日志绑定 IP 长期存储,合规风险;
  5. 不做脏词过滤,后台日志出现大量乱码、垃圾词。

六、日志使用边界提醒

  • localStorage 的本地历史:只用来渲染下拉推荐,不会传到服务器;
  • 后端匿名搜索日志:只用于数据分析、挖掘热门词,不做用户画像追踪。

上一条:如何防止用户搜索历史被篡...

下一条:网站制作公司干货:零基础...