{"repo":"lifefloating/gaokao-vault","free":true,"listed":false,"github":"https://github.com/lifefloating/gaokao-vault","clone":"git clone https://github.com/lifefloating/gaokao-vault.git","description":"gaokao-vault, scrapling抓取阳光高考数据，后续会增加其他类似网站的抓取","language":"Python","stars":31,"topics":["gaokao","python","scrapling","spider","claude","openai","scrapy","gpt"],"license":"Apache-2.0","category":"ai-agents","readme_excerpt":"gaokao-vault 阳光高考全量数据抓取系统 — 从 gaokao.chsi.com.cn 抓取 13 类高考数据（院校、专业、分数线、招生计划等），存入 PostgreSQL，支持全量/增量抓取、断点续爬、反爬对抗。 - 仓库 : - 文档 : 数据预览 功能概览 - 13 类数据源全量覆盖（院校、专业、分数线、一分一段、招生计划、章程等） - 三阶段任务编排，自动处理数据依赖 - content hash (SHA-256) 增量去重 + 变更追踪 - 双 Session 反爬：HTTP 快速请求 + Stealth 浏览器自动切换 - 三层代理池：付费代理 免费代理 直连 - 断点续爬（Ctrl+C 优雅暂停，再次启动自动恢复） - Typer CLI，操作简单 快速开始（Docker Compose，推荐） 无需本地安装 Python 或 PostgreSQL，一键启动： 更多 compose 命令： 数据持久化在 Docker volume 中（ pgdata 存数据库， crawl data 存断点文件）， docker compose down 不会丢数据。彻底清理用 docker compose down -v 。 本地安装 环境要求 - Python 3.10+ - PostgreSQL 18+ - uv 包管理器 安装 配置 核心配置项： 使用 断点续爬 爬取过程中按 Ctrl+C 优雅暂停，进度自动保存。再次运行相同命令即可从断点恢复。按两次 Ctrl+C 强制停止。 纯 Docker（不用 compose） 三阶段编排 阶段 数据 说明 ------ ------ ------ 1 维度数据 provinces, subject categories 由 init-db 种子数据完成 2 核心实体 schools, majors, score lines, timelines, announcements 并行抓取 3 关联数据 school majors, score segments, enrollment plans, charters, special, satisfaction, interpretations 依赖阶段2，并行抓取 数据类型一览 类型 说明 预估数据量 ------ ------ ----------- schools 院校信息 2,900 majors 专业知识库 3,000 school majors 院校-专业关联 100,000 score lines 历年批次线 数万 score segments 一分一段表 百万 enrollment plans 招生计划 百万 charters 招生章程 数万 timelines 志愿填报时间线 数百 special 特殊类型招生 数千 school satisfaction 院校满意度 数千 major satisfaction 专业满意度 数千 interpretations 专业解读 数千 announcements 省级招办公告 数千 技术栈 - Scrapling — 爬虫框架（Spider + FetcherSession + AsyncStealthySession） - asyncpg — PostgreSQL 异步驱动 - Typer — CLI 框架 - Pydantic — 数据校验 + 配置管理 开发 License MIT","default_branch":null,"files":null,"tree":[],"storefront":"/r/lifefloating","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lifefloating/gaokao-vault/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}