반응형
여기서 핵심은 **“크롤링 = 인터넷에서 데이터 수집”**인데, 방법이 두 가지가 있습니다.
1) API 기반 수집 (= 합법적이고 안정적)
- 카카오, 네이버 같은 포털은 **“API”**라는 공식 통로를 제공합니다.
- 이 API는 단순히 HTML을 긁는 게 아니라 **JSON 형식의 데이터(가게 이름, 주소, 전화번호, 좌표 등)**를 정리해서 줍니다.
- 이걸 사용하려면 카카오 개발자센터에서 API Key를 발급받아야 합니다.
→ 왜? 누가 얼마나 호출했는지 추적하고, 트래픽을 제한하기 위해서예요.
즉,
- 장점: 구조화된 데이터, 법적 문제 없음, 안정적
- 단점: 하루/월 호출 제한 있음 (무료 기준 10만건/일)
2) HTML 크롤링 (= 실제 웹페이지 긁기)
- 네이버 플레이스나 망고플레이트 페이지 HTML을 requests/BeautifulSoup 같은 걸로 긁어서 원하는 부분만 뽑아낼 수도 있습니다.
- 이 경우 API Key는 필요 없음.
- 하지만…
- 웹페이지 구조가 바뀌면 코드가 깨짐
- 과도한 요청을 보내면 차단 위험 있음
- 법적으로 “약관 위반” 소지가 있을 수 있음
왜 카카오 API를 먼저 권장했냐?
- 우리 프로젝트 목표: “백엔드에서 카페 데이터를 사용자에게 제공”
- 그러려면 주소/좌표/이름/전화번호 같은 정제된 데이터가 필요합니다.
- 그걸 가장 빨리, 안정적으로 얻는 방법이 **카카오 로컬 API (카테고리=카페 CE7)**예요.
- 이건 공식 API라서, HTML 파싱보다 훨씬 빠르고 안정적입니다.
📌 정리:
- API Key = 카카오가 ‘내가 누구인지’를 알게 하는 열쇠
- 이 키를 헤더에 붙이면 “승인된 사용자”로 데이터를 가져올 수 있음
- 크롤링을 꼭 카카오 API로만 해야 하는 건 아님 → 필요하다면 네이버 플레이스 HTML 파싱, 인스타그램 해시태그 크롤링도 가능
'2025 > [풀스택]SeSAC 웹개발자 7기' 카테고리의 다른 글
| [b1a4 팀프로젝트 TIL] 251001수(6) 배느실 (0) | 2025.10.01 |
|---|---|
| 서울시 25개 전체 구 카페정보를 최대한 많이 수집하는 전략? (0) | 2025.10.01 |
| python 크롤링? (1) | 2025.10.01 |
| 관리자만 접근 가능한 인가 설정하기 (0) | 2025.09.26 |
| [b1a4 팀프로젝트 TIL] 250922월(day2) 배느실 (0) | 2025.09.22 |