AI를 활용한 무제한 Google Maps 리드 수집 방법
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- 웹 크롤링, AI 데이터 처리, 마케팅 자동화 분야의 개발자 및 마케터
- 중간 수준의 프로그래밍 지식 보유자 (Python, API 사용 경험 필수)
- 리드 생성 도구 개발에 관심 있는 기업 마케팅 담당자
핵심 요약
- AI + 웹 크롤링 기반 리드 수집 시스템 구축
- Serper Maps API + Nominatim API 활용한 지오코딩 프로세스
- Playwright를 통한 웹사이트 스크래핑 및 LLM 기반 데이터 분석
- 비용 효율성
- 1,000개 리드당 약 $0.2 (기존 솔루션 대비 50배 저렴)
- 핵심 기술 스택
search_places()
,get_coordinates()
함수 사용EMAIL_PATTERN = re.compile(r"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}")
정규식 활용
섹션별 세부 요약
1. 데이터 수집 프로세스
- Serper Maps API를 사용한 기본 정보 수집
search_places()
함수로 쿼리, 좌표, 페이지 수 입력ll
파라미터 형식:@{lat},{lon},13z
- Nominatim API 활용한 도시명 → 좌표 변환
get_coordinates(city)
함수에서User-Agent
헤더 설정 필수
2. AI 기반 데이터 풍부화
- 웹사이트 스크래핑 및 LLM 분석
- Playwright를 사용한
scrape_website()
함수 async def get_business_info()
에서:
- 주소 페이지에서 링크 및 콘텐츠 추출
- AI 분석으로 소셜 미디어 링크 및 이메일 주소 식별
- 이메일 필터링 로직
analyze_business_emails()
함수에서:
- info@
, contact@
형식 우선 선택
- 부서별 이메일(press@
, events@
)은 제외
- 도메인 기반 이메일 미발견 시 Gmail/Yahoo 계정 허용
3. 데이터 처리 흐름
process_businesses(excel_file)
함수에서:
- Excel 파일 로드 및 행 순회
get_business_info()
실행 후 데이터 업데이트
- 결과 저장 형식:
facebook
,twitter
,email
등 필드로 구성된 Excel 파일
결론
- 핵심 팁: 정규식으로 이메일/링크 추출 후 AI 분석으로 정확도 향상
- LLM 호출 비용 절감 + 허위 정보 감소 효과
- 구현 예시:
```python
# 이메일 추출 정규식
EMAIL_PATTERN = re.compile(r"[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}")
# AI 분석 시스템 프롬프트
system_prompt = "Identify all relevant business contact emails..."
```
- 실무 적용: Excel 파일로 직접 내보내서 마케팅 캠페인 즉시 활용 가능