Agent Skills
返回列表
GESP真题下载

GESP真题下载

教育学习 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_b89a4d0a/gesp-download 到 AI 助手中。

技能介绍

要解决的问题

GESP官方真题散落在网页中,PDF链接是无意义数字,手动下载后命名混乱,整理成本高。每季度新场次公布后,用户需重新爬取链接、重命名文件,且不同语言、等级、年份的组合让批量下载极易出错。

技能如何工作

核心能力

  • 实时爬取官网列表页:脚本直接访问https://gesp.ccf.org.cn/101/1010/,动态解析HTML,无需硬编码链接,新场次自动出现
  • 自动规范命名:从PDF链接的title属性还原可读名称,格式为GESP {年}年{月:02d}月 {语言} {等级}级 试题,如GESP 2026年03月 C++ 5级 试题.pdf
  • 灵活筛选机制:支持--year、--month、--lang、--grade组合筛选,筛选条件为「与」关系
  • 可选Markdown转换:下载后可通过--md转为Markdown,优先使用pymupdf4llm提升排版质量,缺失时回退到PyMuPDF纯文本提取

关键步骤

  1. 范围判定:将自然语言映射为命令行参数,如--year 2026 --month 3 --lang cpp --grade 5
  2. 防呆机制:无筛选条件且未加--all时,脚本拒绝下载并打印可选项清单,避免误操作
  3. 执行下载:默认跳过已存在文件(可重复运行),加--force强制覆盖
  4. 结果回报:输出下载数量、存储目录,并说明是否完成Markdown转换

容错设计

  • 支持两种PDF链接格式:.pdf直链和cms/api/news/downloadFile?id=接口
  • 请求间加入小延迟,避免对官网造成压力
  • 若官网HTML结构变化导致解析失败,需更新脚本中的正则表达式

适用边界与注意点

Markdown转换的局限

图形化(Scratch)试卷以图片为主,文本提取有限,转换后的Markdown可能不完整,脚本会在这类文件顶部添加提示,请以PDF原文为准。

筛选条件的精度

筛选是「与」关系,如--lang python --grade 3仅匹配同时满足两个条件的试卷。若用户意图模糊(如“下载GESP真题”),脚本会先执行--list列出可选场次,等待用户确认范围。

官网改版风险

若官方调整页面结构(如更换DOM标签、接口路径),脚本可能无法解析到PDF链接。此时需检查并更新gesp_download.py中的正则表达式,确保兼容新结构。

下载频率控制

虽然无需登录,但请适度使用,避免高频请求对官网造成负担。脚本已在请求间添加延迟,但不建议短时间内大规模下载全部试卷。

使用场景

  • 教师备课时需获取2026年3月C++五级真题用于课堂练习,手动下载命名混乱且耗时
  • 培训机构整理GESP历年真题库,需按年份、语言、等级批量下载并统一文件命名
  • 学生备考2025年Python三级,希望快速获取该场次PDF并转为Markdown方便笔记
  • 教研组需整理所有Scratch图形化1-4级真题,手动下载后需统一命名格式

适合人员

  • 中小学编程教师:需定期获取GESP真题用于课堂教学和模拟考试
  • 教育培训机构教研员:负责整理和维护GESP真题库,支持按条件批量下载
  • GESP考生家长:希望为孩子下载对应年份和级别的真题,辅助家庭辅导
  • 计算机教育研究者:需收集历年GESP真题进行考试趋势分析和命题研究