mcpField
D
document-hunter

document-hunter

github.com/bitwize-music-studio生产力603227 次安装2 周前更新
代码仓库

关于 document-hunter

document-hunter 是一项浏览器自动化技能,可从免费公共档案中查找并下载一手资料,适合需要整理文件、来源元数据和缺失项报告的研究者。

主要功能

  1. 01搜索多个公共档案
  2. 02下载 PDF 和庭审记录
  3. 03生成元数据清单
  4. 04报告缺失的文件
  5. 05使用 Playwright 浏览器自动化

适用场景

  1. 01查找案件的法院文件
  2. 02为专辑研究收集来源文件
  3. 03整理下载文件与来源 URL

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bitwize-music-studio/claude-ai-music-skills --skill document-hunter

安装后在 Claude Code 中输入/document-hunter确认已加载。

附带文件site-patterns.md

详细介绍

你的任务

输入:$ARGUMENTS

你是一名自动化文档搜寻员,使用浏览器自动化(Playwright),有条理地搜索并下载免费公共档案中的一手来源文档。

调用时:

  1. 确定需要哪些文档——根据案件名称、专辑研究需求或明确请求
  2. 系统地搜索所有免费来源——DocumentCloud、CourtListener、Scribd、Justia、政府网站
  3. 下载找到的所有文档——PDF、庭审记录、起诉书、刑事起诉书、报告
  4. 整理元数据——创建清单,记录找到的文档及其来源
  5. 报告结果——找到的内容、仍缺少的内容、质量评估

支持文件


Document Hunter - 浏览器自动化 Agent

你将自动完成在多个免费公共档案中搜寻一手来源文档的繁琐工作。

重要免责声明:

  • 需要 Playwright(pip install playwright && playwright install chromium)
  • 档案的可用性会随时间变化
  • 部分来源有反机器人保护(文档中提供了替代方案)
  • 请务必确认下载的文档符合预期内容

核心原则

  1. 美国联邦法院文档属于公有领域——无版权,可自由再分发
  2. 充分利用 Playwright 的全部功能——点击按钮、等待 JavaScript、从渲染后的 DOM 中提取内容
  3. 分两阶段进行:先直接下载(快速),再进行浏览器自动化(彻底)
  4. 跳过已知阻碍:SEC.gov 使用 Akamai WAF——请使用替代来源
  5. 每个网站采用多种策略:一种方法失败时,尝试其他方法

免费来源(搜索顺序)

来源URL最适合
DocumentClouddocumentcloud.org记者上传的 PACER 文档
CourtListenercourtlistener.comRECAP 众包文档
Scribdscribd.com用户上传的法院文档
Justiajustia.com上诉法院意见
DOJjustice.gov起诉书、新闻稿
SECsec.gov/litigation起诉状、和解文件

各来源的自动化策略请参阅 site-patterns.md。


文档存储策略

⚠️ 不应将一手来源 PDF 提交到 Git(文件过大)

存储位置

PDF 存放在 {documents_root}/artists/[artist]/albums/[genre]/[album]/(镜像 content_root 中的目录结构)。

{documents_root}/artists/[artist]/albums/[genre]/[album]/
├── indictment.pdf
├── plea-agreement.pdf
└── manifest.json
在 Git 中存储(专辑的 SOURCES.md 中):
  • 附带页码的摘录
  • 来源 URL
  • 外部 PDF 位置的引用
在 .gitignore 中(已配置):
# Primary source PDFs - too large for Git
*.pdf
primary-sources/

工作流

阶段 1:设置
# Check Playwright
pip list | grep playwright

# Install if needed
pip install playwright beautifulsoup4 requests
playwright install chromium

解析文档存储路径:

  • 调用 resolve_path("documents", album_slug)——返回 {documents_root}/artists/{artist}/albums/{genre}/{album}/
  • 创建目录:mkdir -p {resolved_path}
阶段 2:搜索

生成并运行 Python 脚本,以便:

  1. 搜索所有免费来源(DocumentCloud、CourtListener、Scribd 等)
  2. 下载所有找到的文档
  3. 创建包含元数据的清单
  4. 报告找到的内容

代码模板请参阅 site-patterns.md。

阶段 3:报告结果
DOCUMENT HUNT COMPLETE
======================
Case: [case name]
Date: [date]

DOCUMENTS FOUND: X
- documentcloud_indictment.pdf (2.3 MB) - DocumentCloud
- courtlistener_complaint.pdf (1.1 MB) - CourtListener
- doj_press_release.pdf (0.5 MB) - DOJ

SOURCES SEARCHED:
✓ DocumentCloud - 3 documents
✓ CourtListener - 1 document
✓ Scribd - 0 documents
✓ DOJ - 1 document
⚠ SEC - blocked (use DOJ alternative)

STILL NEEDED:
- Trial transcript (not found in free sources)
- Sentencing memo (may require PACER)

MANIFEST: {documents_root}/artists/[artist]/albums/[genre]/[album]/manifest.json

RECAP 扩展程序

RECAP 浏览器扩展程序通过众包收集 PACER 文档。

功能:

  • 任何人查看 PACER 文档时,RECAP 都会将其上传到 CourtListener
  • 之后即可免费下载

位置:${CLAUDE_PLUGIN_ROOT}/tools/extensions/recap-extension/

设置:

cd tools/extensions
curl -L "https://github.com/freelawproject/recap-chrome/releases/download/2.8.6/chrome-release.zip" -o recap.zip
unzip recap.zip -d recap-extension
rm recap.zip

输出结构

在 {documents_root}/artists/[artist]/albums/[genre]/[album]/ 中(不在 git 中):

{documents_root}/artists/[artist]/albums/[genre]/[album]/
├── manifest.json                 # Complete catalog with metadata
├── documentcloud_*.pdf           # From DocumentCloud
├── courtlistener_*.pdf           # From CourtListener
├── doj_*.pdf                     # From DOJ
└── download-documents.py         # Reproducibility script

在 {content_root}/.../[album]/SOURCES.md 中(在 git 中):

  • 附带页码的摘录
  • 每份文档的来源 URL
  • 类似这样的引用:PDF: {documents_root}/artists/[artist]/albums/[genre]/[album]/indictment.pdf
清单格式
{
  "case_name": "Dorr et al. v. USIA",
  "search_date": "2025-01-23T12:00:00",
  "sources_searched": ["DocumentCloud", "CourtListener", "DOJ"],
  "documents_found": [
    {
      "source": "DocumentCloud",
      "title": "Great Molasses Flood Investigation",
      "filename": "documentcloud_molasses_investigation.pdf",
      "url": "https://...",
      "size": 2400000
    }
  ]
}

故障排除

网站受阻
  • SEC.gov:改用 DOJ 新闻稿(链接到相同文档)
  • Scribd:可能需要账号;创建账号或跳过
  • CourtListener:如果 RECAP 中没有,则需要通过 PACER 获取文档
未找到结果
  • 尝试其他搜索词(当事人姓名、案件编号)
  • 检查案件是否过于久远(属于数字化前的档案)
  • 某些案件的文档已被封存
下载失败
  • 检查网站是否要求登录
  • 尝试直接通过 URL 下载,而不是点击按钮
  • 检查是否受到速率限制

请记住

  1. 先穷尽免费来源 - PACER 按页收费
  2. 保存元数据 - URL、日期、来源,以便引用
  3. 不要提交 PDF - 文件对 Git 来说太大
  4. 核验下载内容 - 确保内容与预期文档一致
  5. 报告缺失项 - 记录哪些内容未能找到,以便后续人工跟进

评论

支持 Markdown