콘텐츠로 이동

1. 구현 언어로 Python을 선택

  • 상태: 승인됨
  • 날짜: 2026-04-06

맥락

트렌드 데이터를 수집(스크래핑) → 파싱 → 저장하는 데이터 파이프라인을 새로 구축해야 한다. 오늘도하오(Hao-Day-Backend)는 Java/Spring Boot 기반이지만, 이 프로젝트는 독립 프로젝트로 운영하기로 결정했으므로 언어 선택이 자유롭다.

결정

Python을 구현 언어로 선택한다.

근거

  • 스크래핑 생태계 최강: requests, BeautifulSoup, Scrapy 등 검증된 라이브러리가 풍부하다.
  • 데이터 파이프라인 표준: pandas, SQLAlchemy 등 데이터 처리/저장 라이브러리가 성숙해있다.
  • 빠른 소스 추가: 새 트렌드 소스를 추가할 때 가장 빠르게 프로토타이핑할 수 있다.
  • boto3: RustFS(S3-compatible) 연동이 가장 잘 지원되는 언어 중 하나이다.

검토한 대안

대안 장점 선택하지 않은 이유
Java (기존 스택과 통일) 오늘도하오와 코드 공유 가능 스크래핑 생태계가 약하고, 간단한 파이프라인에 보일러플레이트가 과다
Go 단일 바이너리 배포, 동시성 우수 HTML 파싱 라이브러리 부족, 데이터 파이프라인 생태계 미성숙
Node.js/TypeScript cheerio/puppeteer 등 파싱 도구 존재 데이터 파이프라인보다 웹 서비스에 특화, ORM 생태계 약함

결과

  • Python 3.9+ 기반으로 프로젝트를 구성한다.
  • 의존성 관리는 pyproject.toml (PEP 621)을 사용한다.
  • 오늘도하오와 코드 레벨의 공유는 없으며, 인프라(MySQL, RustFS)만 공유한다.