Python 现代开发学习笔记

(一)从操作写出完成标准

先把“做一个书目网站”写成能够执行和检查的操作。来源网页已经放在项目中,打开本地来源服务即可采集。第一页有三张卡片,第二页有三张,第三页有四张;同一本书会重复出现,最后一张卡片缺少书名。

操作 程序应产生的状态 检查方式
第一次采集三页 原始 10 条,去重后 6 本,重复 3 条,拒收 1 条 比较报告、原始快照与数据库
重放同一快照 返回这次导入的报告 批次数和书目数不增加
重新采集相同来源 新批次报告“未变 6 本” 书目仍为 6 本
查询未读书的第二页 总计 4 本,本页只有 b106 页面和 JSON 返回相同记录
关闭并重开查询服务 仍能查询已经提交的书目 使用原数据库重新启动
在写入过程中出错 整批写入回退,原始快照仍在 修复后重放快照

这里有两个编号:source_id 标识来源中的一本书,run_id 标识一次完整采集。重复出现的 b101 仍是同一本书;下一天重新采集,应该有新的批次编号。这就是后面主键、去重和报告的依据。

分别执行首次导入、同一快照重放、新一轮采集和服务重开,逐步比较批次与书目的变化

笔记正文与全部题解 · Ctrl / ⌘ K