Skip to content

nirvanary2016-debug/legal-case-collector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Legal Case Collector

自动化采集中国法律案例与答问,存储为 Markdown 文件,支持增量更新。

采集来源

来源 数量 网站
法答网精选答问 ~35 篇 court.gov.cn
最高检指导案例 ~58 批 spp.gov.cn
最高院典型案例 ~393 篇 court.gov.cn
最高院指导案例 ~293 篇 court.gov.cn

项目结构

legal-case-collector/
├── main.py                          # 入口文件,命令行解析
├── run.command                      # macOS 双击启动脚本
├── internal/
│   ├── model/
│   │   └── types.py                 # 数据类型定义(ArticleMeta、QAItem 等)
│   ├── collector/
│   │   ├── collector.py             # 采集器基类接口
│   │   ├── fadawang.py              # 法答网精选答问采集器
│   │   ├── spp_guidance.py          # 最高检指导案例采集器
│   │   ├── court_typical.py         # 最高院典型案例采集器
│   │   └── court_guidance.py        # 最高院指导案例采集器
│   ├── storage/
│   │   ├── markdown.py              # Markdown 文件写入与索引生成
│   │   └── tracker.py               # 增量采集状态追踪
│   └── http/
│       └── client.py                # 带速率限制的 HTTP 客户端
└── output/                          # 采集输出(已在 .gitignore 中)
    ├── 法答网精选答问(自动)/
    ├── 最高检指导案例(自动)/
    ├── 最高院典型案例(自动)/
    ├── 最高院指导案例(自动)/
    └── state.json                   # 采集状态记录

每篇案例为独立 Markdown 文件,包含 YAML frontmatter(来源、日期、URL 等)和结构化正文。

环境要求

  • Python 3.10+

安装

git clone https://github.com/nirvanary2016-debug/legal-case-collector.git
cd legal-case-collector
python3 -m venv .venv
source .venv/bin/activate  # Linux/Mac
pip install requests beautifulsoup4 lxml

使用方法

# 全量采集(增量模式,只采集新增内容)
python main.py collect

# 采集指定来源
python main.py collect -s fadawang          # 法答网精选答问
python main.py collect -s spp_guidance      # 最高检指导案例
python main.py collect -s court_typical     # 最高院典型案例
python main.py collect -s court_guidance    # 最高院指导案例

# 按分类采集
python main.py collect -s fadawang -c "执行工作"

# 强制全量重采
python main.py collect --force

# 预览将要采集的内容
python main.py collect --dry-run

# 查看采集状态
python main.py status

# 列出可用分类
python main.py categories -s fadawang

可用参数

参数 说明 默认值
-s, --source 采集来源 all
-c, --category 分类过滤
-o, --output 输出目录 ./output
--interval 请求间隔(秒) 1.5
--force, -f 强制全量重采 false
--dry-run 仅预览 false

增量更新

首次运行后,output/state.json 会记录已采集的文章 ID。后续运行自动跳过已采集内容,只下载新增文章。

注意事项

  • 默认请求间隔 1.5 秒,请尊重政务网站服务器
  • 如遇网络问题,可适当增大间隔:--interval 3
  • macOS 用户双击 run.command 可直接运行全量采集

License

MIT

About

自动化采集中国法律案例与答问,存储为 Markdown,支持增量更新

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors