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 연계를 통한 스케줄 데이터 서비스화 실현
  • 신규 선사 추가 시 최소 리소스로 확장 가능한 구조 마련

© 2020. All rights reserved.

SIKSIK