FCL SCRAPER
FCL SCRAPER
카테고리 : 물류
FCL SCRAPER
1. 프로젝트 개요
- 프로젝트명: FCL(Full Container Load) 스케줄 데이터 수집 시스템
- 역할: 백엔드 개발자
- 프로젝트 목적:
- 선사의 컨테이너 선박(FCL) 스케줄을 자동 수집하여 물류 플랫폼에서 활용
- 선사 및 포워더별 서로 다른 데이터 형식을 표준화하여 API 및 내부 서비스와 연동
- 데이터 자동화 및 배치 최적화를 통해 운영 효율성 및 데이터 품질 향상
- 기술 스택:
- 백엔드: Java, Spring Boot
- 배치 시스템: Crontab
- 데이터 수집: Scraper (웹 스크래핑)
- 배포 및 운영: Azure DevOps
2. 스크래퍼 종류 및 데이터 수집 방식
1. FTP 스크래퍼
- 선사 및 포워더에서 제공하는 FCL 스케줄 데이터를 FTP 서버에서 자동 다운로드
- Excel, CSV, XML, JSON 등 다양한 포맷을 표준화된 구조로 변환 및 저장
- 기존 데이터와 비교하여 변경 사항만 반영하여 불필요한 중복 저장 방지
- 스케줄 변동 내역 자동 업데이트하여 정확한 최신 데이터 유지
2. FCL 스크래퍼
- 선사 및 포워더의 공식 웹사이트에서 실시간 크롤링하여 스케줄 수집
- Selenium, Playwright, Jsoup을 활용한 정적/동적 페이지 크롤링
- 각 선사별 HTML 구조가 상이하므로 개별 크롤러를 설계하여 최적화
- 데이터 정합성 검사를 수행하여 중복 제거 및 오류 데이터 필터링
3. FCL 수집하는 주요 데이터 항목
- 선사별 출발 및 도착 일정 (ETD/ETA)
- 출발·도착 항구 정보 (POL, POD)
- 운송 기간(Transit Time)
- 환적 여부 및 환적 항구 정보
- 스케줄 변경 이력 (최신 업데이트 포함)
4. Vessel 스크래퍼 (선박 위치 및 실시간 스케줄 수집)
- 외부 API 및 웹사이트에서 선박의 실시간 위치 및 항해 데이터를 수집
- Vessel 스케줄과 FCL 스케줄을 비교하여 데이터 정합성을 유지
수집하는 주요 데이터 항목
- 선박명 및 IMO 번호
- 현재 위치 및 예정 항구 정보
- 항해 경로 및 도착 예측 시간(ETA)
- 선박 적재 상태(Empty/Full)
3. 프로젝트 성과 및 기여도
- 20개 이상의 선사 대상 FCL 스케줄 자동 수집 시스템 구축
- 선사별 포맷 차이를 해소하는 데이터 표준화 로직 설계로 활용도 증대
- 변경 감지 자동화로 스케줄 갱신 반영 시간 최소화
- 외부 API 연계를 통한 스케줄 데이터 서비스화 실현
- 신규 선사 추가 시 최소 리소스로 확장 가능한 구조 마련