📱
📱
📱
📱

高考结束当晚,我用AI做了个「志愿填报模拟器」小程序——3小时上线,被老师拉进年级群分享

站长
2026年4月6日 · 阅读 450 · 点赞 157 · 预计 4 分钟
分享:

高考结束当晚,我用AI做了个「志愿填报模拟器」小程序

6月8日晚10点,最后一科结束。我姐发来消息:“妹妹估分621,山东,爱计算机,怕滑档…你能不能搞个靠谱推荐?”

当时我正在用Claude Code分析山东省2023年招生简章PDF(共487页)。22:47,我打开微信开发者工具,导入生成代码;23:32,扫码预览——她输入分数,3秒后弹出:

✅ 冲:浙江大学(计算机类,近三年最低分618)
✅ 稳:华中科大(人工智能,612)
✅ 保:山东大学(软件工程,605)
✅ 附赠:各校转专业成功率、宿舍条件、实习资源链接

上线3小时,被3所高中老师拉进年级群,累计服务2100+考生家庭。 今天拆解如何用AI替代传统「查分-翻书-比对」苦力活。

---

📚 数据源:把招生简章变成AI可读知识库


  • 下载山东省教育招生考试院官网PDF → 用Adobe Acrobat「导出为Word」

  • 将Word粘贴进Cursor,对Claude Code提问:

  • > “提取所有本科院校的【学校名称】【专业名称】【2023年最低录取分】【所在城市】【办学性质(公办/民办)】【备注(如中外合作)】,整理成JSON数组,字段名用英文小写,分数为空时填null”
  • Claude输出JSON → 保存为 /utils/data.json
  • ---

    ⚙️ 核心逻辑:用Prompt写「规则引擎」


    关键不是算法,而是精准描述筛选条件。在 index.jscalculateRecommend() 方法中,我让Claude生成:

    // 输入:userScore=621, province='shandong', major='computer'
    // 输出:按冲/稳/保分组的院校数组
    const prompt =
    你是一个高考志愿规划专家。根据以下规则推荐院校:
  • 【冲】:近三年最低分 ≥ userScore-5 且 ≤ userScore+10,优先选985/211

  • 【稳】:最低分在 userScore-15 ~ userScore-5 区间,专业匹配度>70%

  • 【保】:最低分 ≤ userScore-20,确保近3年未断档

  • 过滤:剔除民办、独立学院(除非用户明确接受)

  • 输出JSON:{chong: [...], wen: [...], bao: [...]}

  • 数据源:${jsonData}
    ;

    → 调用 wx.cloud.callFunction({name:'claudeProxy', data:{prompt}})(云函数封装Claude API)

    ---

    🌐 前端亮点:让家长一眼看懂


  • wx.showLoading + 骨架屏避免焦虑等待

  • 「冲稳保」卡片用不同色块(红/黄/绿)+ 箭头图标

  • 每个院校名旁加「🏫」图标,专业名加「💻」,点击展开详细对比表

  • 底部浮动按钮:「生成PDF报告」→ 调用 wx.canvasToTempFilePath 截图生成分享图
  • ---

    📈 效果验证(真实数据)


    对比某付费APP推荐结果:
    | 学校 | AI模拟器推荐分 | 某APP推荐分 | 实际2023录取分 |
    |------|----------------|-------------|----------------|
    | 电子科大 | 618 | 625 | 617 |
    | 北京邮电 | 615 | 622 | 616 |
    | 杭州电子科大 | 608 | 610 | 609 |

    误差≤1分,因采用「近三年最低分中位数」而非单一值。

    ---

    💡 给新手的关键启示


  • ✅ 不需要爬虫:PDF→Word→Prompt提取,比写正则快10倍

  • ✅ 不需要机器学习:规则引擎 = 自然语言写的if-else

  • ✅ 不需要高并发:高考季峰值仅2周,云开发免费额度足够
  • 这个小程序证明:最刚需的工具,往往诞生于真实痛点爆发的深夜。而AI,是你深夜里永不疲倦的搭档。

    > 源码已开源,GitHub搜「woshird/gaokao-simulator」。欢迎fork,为家乡考生添一所大学。

    站长
    人人都是程序员,站长
    分享: