피드로 돌아가기
Dev.toBackend
원문 읽기
HTTP Header와 CIK 맵핑 기반의 SEC EDGAR 데이터 파이프라인 구축
The SEC EDGAR API: A Practical Guide to Free Filing Data in Python
AI 요약
Context
유료 벤더나 웹 스크래핑에 의존하던 미국 상장사 재무 데이터 수집의 비효율성 존재. 정교한 API 키 없이 공개된 JSON 엔드포인트를 활용한 직접적인 데이터 추출 체계 필요.
Technical Solution
- Ticker를 내부 식별자인 CIK(Central Index Key)로 변환하는
company_tickers.json매핑 레이어 구축 - API 요청 실패 방지를 위해 CIK 값을 10자리 숫자로 맞추는 Zero-padding 전처리 로직 적용
- SEC Fair-access 정책 준수를 위해 이름과 이메일을 포함한 고유 User-Agent 헤더 필수 정의
- IP 차단 방지를 위해 초당 10회 미만으로 요청을 제한하는 Rate limiting 전략 수립
- Browser JavaScript의 Forbidden Header 제약을 극복하기 위한 Server-side Fetch 구조 설계
- XBRL 기반의
companyconcept엔드포인트를 활용한 특정 재무 개념의 정밀 추출
실천 포인트
1. User-Agent 헤더에 식별 가능한 연락처 정보 포함 여부 확인
2. CIK 식별자의 10자리 Zero-padding 처리 함수 구현
3. `time.sleep(
0.1)` 등을 통한 초당 10회 미만 요청 속도 제어
4. 클라이언트 사이드 호출이 아닌 서버 사이드 프록시 구조 검토