scrap.grantsping.com / docs / 수집 구조 DOCSWIKI

수집 구조

scraper가 6개 소스에서 어떻게 데이터를 모으는지 한 페이지로

일별 파이프라인

모든 시각은 UTC. 평일(월–금)에만 실행되며, 평일 KST 09:00–09:13에 끝난다.

scraper
소스 → DB
00:00
scrap-site
DB → /data.json + /index.html
00:05
analyze
data.json → insights/
00:10
wiki
insights → /wiki/*.md
00:10+
notify
매칭 알림 → Slack
00:13

6개 소스

각 source 어댑터는 grantsping_scraper.sources.<name> 에 정의되며, 모두 동일한 표준 8필드(공고명·소관부처·사업수행기관·지원분야·신청시작/종료일자·등록일자·공고상세URL)로 정규화된 뒤 raw_data.grants_queue 테이블에 적재된다.

bizinfo

bizinfo (기업마당)

www.bizinfo.go.kr
정상
GET (.xlsx)
pandas read_excel
diff & save
DB · grants_queue
방식
Excel 일괄 다운로드 → pandas 파싱
스케줄
매일 0시 (cron, 평일)
엔드포인트
GET /sii/siia/selectSIIA200ExcelDownload.do?schEndAt=N
응답
.xlsx (전체 공고 1회 응답)
파서
pandas + openpyxl, 한국어 헤더 → 표준 8필드
ID 키
pblancId (URL query)
총건수
3,600건 (활성 1,560)
마지막 수집
2026-05-22 00:00:03
kstartup

k-startup (창업진흥원)

www.k-startup.go.kr
정상
리스트 N pages
상세 N pages
BS4 parse
diff & save
DB · grants_queue
방식
리스트 페이지네이션 + 상세 페이지 스크래핑
스케줄
매일 0시 (cron, 평일)
엔드포인트
GET /web/contents/bizpbanc-ongoing.do?page=N · &schM=view&pbancSn={id}
응답
HTML (BeautifulSoup)
파서
리스트 #bizPbancList li → 상세 div.table_inner의 tit/txt 페어
ID 키
pbancSn (go_view(...) 호출에서 추출)
총건수
486건 (활성 272)
마지막 수집
2026-05-22 00:02:27
jbba

jbba (전북경제통상진흥원)

www.jbba.kr
정상
리스트 (신규 페이지만)
상세 (신규 wr_id만)
BS4 parse
diff & save
DB · grants_queue
방식
GnuBoard 게시판 리스트 + 상세 페이지 (incremental)
스케줄
매일 0시 (cron, 평일) — DB known-id 주입, 신규만 처리
엔드포인트
GET /bbs/board.php?bo_table=sub01_09&page=N · &wr_id={id}
응답
HTML (BeautifulSoup)
파서
tr/td 셀 [번호 | D-day+제목 | 접수기간 | 담당자] → 상세 th/td
ID 키
wr_id (URL query)
총건수
1,632건 (활성 26)
마지막 수집
2026-05-22 00:02:28
gwep

gwep (강원경제진흥원)

gwep.or.kr
정상
리스트 (신규 페이지만)
BS4 parse
diff & save
DB · grants_queue
방식
GnuBoard 게시판 리스트만 (상세 미사용, incremental)
스케줄
매일 0시 (cron, 평일) — DB known-id 주입, 신규만 처리
엔드포인트
GET /bbs/board.php?bo_table=gw_sub21&page=N
응답
HTML (BeautifulSoup)
파서
tr/td 셀의 div.bo_tit + 작성일만 추출 (접수기간 자유형식이라 미파싱)
ID 키
wr_id (URL query)
총건수
3,264건 (활성 3,264)
마지막 수집
2026-05-22 00:02:31
mohw

mohw (보건복지부)

www.mohw.go.kr
정상
리스트 (신규 페이지만)
BS4 parse + 분류 필터
diff & save
DB · grants_queue
방식
board.es 공지사항 리스트, 분류=='공고' 필터 (incremental)
스케줄
매일 0시 (cron, 평일) — DB known-id 주입, 신규만 처리
엔드포인트
GET /board.es?mid=a10501010200&bid=0003&nPage=N
응답
HTML (BeautifulSoup)
파서
tr/td 셀 [번호 | 분류 | 제목 | 작성일 | 첨부 | 조회수], 분류='공고'만 채택
ID 키
list_no (URL query)
총건수
2,243건 (활성 2,243)
마지막 수집
2026-05-22 00:02:33
kocca

kocca (한국콘텐츠진흥원)

www.kocca.kr
정상
리스트 (신규 페이지만)
BS4 parse + 종료사업 제외
diff & save
DB · grants_queue
방식
PIMS 게시판 리스트, '종료된사업' 제외 (incremental)
스케줄
매일 0시 (cron, 평일) — DB known-id 주입, 신규만 처리
엔드포인트
GET /kocca/pims/list.do?menuNo=204104&pageIndex=N
응답
HTML (BeautifulSoup)
파서
tr/td 셀 [구분 | 제목+링크 | 등록일 | 접수기간 | 조회수], 신청시작/종료 모두 추출
ID 키
intcNo (URL query)
총건수
20건 (활성 6)
마지막 수집
2026-05-22 00:02:34
운영 노트. default SOURCES="bizinfo,kstartup,jbba,gwep,mohw,kocca" 로 6개 모두 매일 cron 실행. jbba / gwep / mohw / kocca 는 게시판이라 과거 게시물까지 페이지네이션되므로, __main__.pyINCREMENTAL_SOURCES 에 등록되어 DB에 이미 있는 ext_id 집합을 주입받고, 첫 page가 모두 known이면 즉시 종료한다 (cold start = 전체 backfill, daily run ≈ 1 page).