用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/aibot88/sec_skill_store --skill court-divorce-cases命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | court-divorce-cases |
| description | 법제처 국가법령정보 API를 통해 이혼 판례를 검색하고 다운로드합니다. |
법제처 국가법령정보 Open API를 사용하여 이혼 관련 판례를 검색하고 다운로드합니다.
다음과 같은 작업을 할 때 사용됩니다:
법제처 Open API를 통한:
절차:
특징:
절차:
API 정보:
http://www.law.go.kr/DRF/lawSearch.do요청 파라미터:
OC: 사용자 이메일 ID의 @ 앞부분 (필수, 예: nfbs2000@gmail.com → nfbs2000)target: prec (판례 검색, 필수)type: XML (필수, JSON은 작동하지 않음)query: 검색어 (예: "이혼", "유책배우자")search: 검색 범위 (1=판례명, 2=전문 검색, 기본값: 2 권장)display: 결과 개수 (최대 100, 기본값: 20)page: 페이지 번호 (기본값: 1)org: 법원 유형 (400201=대법원, 400202=하급심)curt: 법원명sort: 정렬 (lasc, ldes, dasc, ddes, nasc, ndes, 기본값: ddes)prncYd: 선고일자 범위 (예: 20200101~20241231)nb: 사건번호중요 사전 준비:
응답 필드:
prec: 판례 정보
판례일련번호: 고유 ID판례명: 사건명사건번호: 법원 사건번호선고일자: 판결 날짜법원명: 판결 법원법원종류코드: 법원 유형 코드사건종류명: 사건 유형판결유형: 판결 종류판례상세링크: 상세 페이지 URL예시 요청:
http://www.law.go.kr/DRF/lawSearch.do?OC=test&target=prec&type=XML&query=이혼&search=2&display=100
Python 예제 (법제처 판례 검색 API):
def search_precedents(oc: str, keyword: str = "이혼", search_type: int = 2, display: int = 100):
"""
법제처 판례 검색 API로 판례 검색
Args:
oc: 사용자 이메일 ID (@ 앞부분)
keyword: 검색 키워드
search_type: 1=판례명, 2=전문 검색
display: 결과 개수 (최대 100)
"""
base_url = "http://www.law.go.kr/DRF/lawSearch.do"
params = {
'OC': oc,
'target': 'prec', # 판례 검색
'type': 'XML',
'query': keyword,
'search': search_type,
'display': display,
'page': 1
}
response = requests.get(base_url, params=params)
if response.status_code != 200:
raise Exception(f"API 호출 실패: {response.status_code}")
# XML 파싱
root = ET.fromstring(response.content)
# 결과 추출
cases = []
for item in root.findall('.//prec'):
case = {
'판례일련번호': item.findtext('판례일련번호', ''),
'판례명': item.findtext('판례명', ''),
'사건번호': item.findtext('사건번호', ''),
'선고일자': item.findtext('선고일자', ''),
: item.findtext(, ),
: item.findtext(, ),
: item.findtext(, ),
: item.findtext(, ),
: item.findtext(, )
}
cases.append()
pd.DataFrame(cases)
API 엔드포인트:
http://www.law.go.kr/DRF/lawSearch.do
Python 예제:
import requests
import xml.etree.ElementTree as ET
import pandas as pd
from typing import List, Dict
def search_divorce_cases(api_key: str, keyword: str = "유책배우자", display: int = 100):
"""
이혼 판례 검색
Args:
api_key: 국가법령정보 API 키
keyword: 검색 키워드 (예: "유책배우자", "이혼 사유")
display: 한 페이지당 결과 수 (최대 100)
Returns:
판례 목록 데이터프레임
"""
base_url = "http://www.law.go.kr/DRF/lawSearch.do"
params = {
'OC': api_key, # API 키
'target': 'prec', # 판례 검색
'type': 'XML', # XML 형식
'query': keyword, # 검색어
'display': display, # 결과 수
'page': 1 # 페이지 번호
}
# API 호출
response = requests.get(base_url, params=params)
if response.status_code != 200:
raise Exception(f"API 호출 실패: {response.status_code}")
# XML 파싱
root = ET.fromstring(response.content)
# 판례 목록 추출
cases = []
for prec in root.findall('.//PrecService'):
case = {
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, ),
: prec.findtext(, )
}
cases.append()
df = pd.DataFrame(cases)
()
df
api_key =
divorce_cases = search_divorce_cases(api_key, keyword=)
divorce_cases.to_csv(, index=, encoding=)
API 엔드포인트:
http://www.law.go.kr/DRF/lawService.do
요청 파라미터:
OC: 사용자 이메일 ID (@ 앞부분)target: prec (판례, 필수)type: XML (권장), HTML, JSONID: 판례일련번호 (필수)mobileYn: Y (모바일 최적화, 선택)Python 예제:
import xml.etree.ElementTree as ET
import requests
from pathlib import Path
def get_case_detail(oc_id: str, case_serial_no: str):
"""
특정 판례의 전문(full text) 조회
Args:
oc_id: 사용자 이메일 ID (@ 앞부분)
case_serial_no: 판례일련번호
Returns:
판례 전문 내용
"""
base_url = "http://www.law.go.kr/DRF/lawService.do"
params = {
'OC': oc_id,
'target': 'prec',
'type': 'XML',
'ID': case_serial_no,
'mobileYn': ''
}
response = requests.get(base_url, params=params)
response.raise_for_status()
root = ET.fromstring(response.content)
# 판례 상세 정보 추출
detail = {
'판례일련번호': case_serial_no,
'사건번호': root.findtext('.//사건번호', ''),
'사건명': root.findtext('.//사건명', ''),
'선고일자': root.findtext('.//선고일자', ''),
'법원명': root.findtext('.//법원명', ''),
'사건종류명': root.findtext('.//사건종류명', ''),
'판시사항': root.findtext('.//판시사항', ''),
'판결요지': root.findtext('.//판결요지', ''),
'참조조문': root.findtext('.//참조조문', ),
: root.findtext(, ),
: root.findtext(, ),
: root.findtext(, )
}
detail
():
output_path = Path(output_dir)
output_path.mkdir(parents=, exist_ok=)
case_id = detail[]
case_no = detail[].replace(, )
filename =
filepath = output_path / filename
content =
(filepath, , encoding=) f:
f.write(content)
()
filepath
oc_id =
case_detail = get_case_detail(oc_id, case_serial_no=)
save_case_to_file(case_detail, )
# 법제처 판례 검색 API
# 이메일 ID의 @ 앞부분 (예: g4c@korea.kr → g4c)
LAW_OC_ID=your_email_id_before_at
주의사항:
스킬 상태: 완료 ✅ 줄 수: 500줄 미만 ✅ 베스트 프랙티스: Anthropic 가이드라인 준수 ✅