多策略抓取
BFS、DFS 与 Big Site First 并存,系统不是单条 happy path。
把课设里的全栈爬虫工作台整理成作品集案例,重点展示 DDD 分层、任务时序、实时日志、持久化设计,以及怎样用文档把系统讲清楚。
重点展示的是边界、流程、观测面与文档能力,而不是把界面截图串起来。
任务、结果、日志、导出和策略切换已经形成完整工作台。
PlantUML 图表让第三方也能快速理解系统结构与实现路径。
BFS、DFS 与 Big Site First 并存,系统不是单条 happy path。
Socket.IO 日志和任务状态面板让运行过程变成可见信息。
PlantUML 代码和导出图表足够支撑一份真正可讲解的系统案例页。
CrawlerService、CrawlTask、值对象、领域服务和基础设施适配器被明确拆开,说明 CrawlFlow 不是从接口一路写到数据库的脚本堆砌,而是一份认真做过分层设计的课程项目。
前端发起任务,后端编排队列、执行抓取、持久化结果,再通过 EventBus 和 WebSocket 回推到界面。重点不是单次请求成功,而是任务生命周期怎样形成闭环。
任务、结果、PDF 相关内容和状态信息有明确数据结构,说明 CrawlFlow 的落点不是临时内存结果,而是可查询、可导出、可复盘的持久化工作流。
Repository 接口、DAO 层、数据库模型和具体实现各自承担不同责任,说明这套后端不只是能写入 MySQL,而是已经考虑了替换实现与测试隔离。
标题、作者、摘要、关键词与发布时间的提取路径被显式画出。它说明 CrawlFlow 不只是在抓 HTML,而是在把页面内容转成结构化结果。
请求发起、响应返回、错误处理与后续解析之间有明确顺序,这为 Hybrid HTTP / Playwright 回退、性能日志与异常观测提供了稳定挂点。
CrawlFlow 把爬取纪律单独抽出来处理,说明它不是粗暴扫站,而是把 allow / deny / delay 等约束纳入真正的运行流程。
业务层和基础设施层的事件通过 EventBus 进入日志处理器,再同步到文件与 WebSocket,前端控制台因此能看到任务推进、技术日志和异常切片。
我没有把 CrawlFlow 包装成夸张的平台故事,而是保留最能说明工程能力的部分:架构边界、执行时序、持久化设计、爬取纪律、实时观测,以及围绕这些内容建立起来的图表与文档资产。
不展示每一个按钮,而是展示它背后的系统结构。
只保留最能代表系统骨架的 8 张图,而不是把所有导出图片堆满页面。
视觉与现有案例页保持同源,让 CrawlFlow 真正成为作品集的一部分。
而是我能把一份课程设计整理成边界清晰、运行可见、文档完备、适合对外展示的工程案例。它证明的是系统拆解能力、工程组织能力,以及把复杂内容讲明白的能力。