카테고리 없음

파이썬으로 네이버 키워드 수집하는 초보자 가이드

불타는 신디 2025. 5. 13. 10:30
728x90
반응형

🐍 파이썬으로 네이버 키워드 수집하는 초보자 가이드

인터넷 세상에서 키워드는 콘텐츠의 나침반과 같습니다. 어떤 키워드를 잘 활용하느냐에 따라 블로그 방문자 수가 달라지기도 하죠. 오늘은 **파이썬(Python)**을 사용해 네이버 데이터랩 API로 키워드를 자동으로 수집하고, 엑셀 혹은 CSV 파일로 저장하는 방법을 단계별로 배워보겠습니다.

이 글을 따라 하면, 코드 한 줄씩 실행하며 초보자도 문제없이 키워드 데이터를 받아볼 수 있어요.


📋 준비물

  1. 파이썬 3.x가 설치된 PC
  2. 터미널(또는 명령 프롬프트)
  3. 네이버 개발자 센터에서 발급받은 Client ID Client Secret
  4. Python 라이브러리: requests, pandas
pip install requests pandas

1단계. 네이버 데이터랩 API 키 발급받기

  1. 네이버 개발자 센터에 로그인 후, 내 애플리케이션 메뉴로 이동
  2. 애플리케이션 등록 버튼 클릭 → 이름, 사용 API에서 Data Lab Search 선택
  3. 등록하면 Client ID Client Secret 값을 확인할 수 있습니다
  4. 이 두 값을 안전하게 보관하고, 코드에서는 환경 변수로 관리할 예정입니다.

2단계. 환경 변수 설정하기(Windows 예시)

# PowerShell
setx NAVER_CLIENT_ID "YOUR_CLIENT_ID"
setx NAVER_CLIENT_SECRET "YOUR_CLIENT_SECRET"

터미널을 다시 열고, 다음 코드로 제대로 설정됐는지 확인해보세요.

python - << 'EOF'
import os
print('Client ID:', os.getenv('NAVER_CLIENT_ID'))
print('Client Secret:', os.getenv('NAVER_CLIENT_SECRET'))
EOF

3단계. 파이썬 코드로 키워드 데이터 요청하기

다음 예제는 지난 1주일간(2025-04-01 ~ 2025-04-07) 특정 키워드의 검색 지수를 가져옵니다.

import os
import json
import requests
import pandas as pd

# 환경 변수에서 키 가져오기
client_id = os.getenv('NAVER_CLIENT_ID')
client_secret = os.getenv('NAVER_CLIENT_SECRET')

# 요청 URL 및 헤더
url = 'https://openapi.naver.com/v1/datalab/search'
headers = {
    'X-Naver-Client-Id': client_id,
    'X-Naver-Client-Secret': client_secret,
    'Content-Type': 'application/json'
}

# 요청 바디 예시
body = {
    'startDate': '2025-04-01',
    'endDate': '2025-04-07',
    'timeUnit': 'week',
    'keywordGroups': [
        {'groupName': '블로그 키워드', 'keywords': ['블로그', '티스토리', '네이버 블로그']}
    ]
}

# POST 요청 보내기
response = requests.post(url, headers=headers, json=body)
response.raise_for_status()
result = response.json()

# JSON 결과 구조 확인
print(json.dumps(result, indent=2, ensure_ascii=False))

Tip: timeUnit 파라미터를 'day', 'week', 'month'로 바꿔보며 원하는 기간 단위로 데이터를 받아볼 수 있습니다.


4단계. 받은 데이터 가공 및 CSV 저장

# 'results' 안에 여러 그룹별 데이터가 들어있음
results = result['results'][0]

dates = results['data']  # 리스트 안에 날짜별 검색 지수가 담긴 딕셔너리

df = pd.DataFrame(dates)
# 컬럼 재정렬: period(날짜), ratio(검색 지수)
df = df[['period', 'ratio']]

df.columns = ['날짜', '검색지수']

# CSV로 저장
csv_path = 'keyword_trend.csv'
df.to_csv(csv_path, index=False, encoding='utf-8-sig')
print(f"저장 완료: {csv_path}")

이제 같은 폴더 안에 keyword_trend.csv가 생성되었을 거예요. 엑셀로 열어보면 날짜별 검색 지수가 깔끔하게 정리돼 있습니다.


5단계. 다양한 키워드 그룹 활용하기

여러 키워드를 한 번에 비교하고 싶다면, keywordGroups에 추가 항목을 넣어보세요.

[
  {
    'groupName': '블로그 키워드',
    'keywords': ['블로그', '티스토리']
  },
  {
    'groupName': '커피 키워드',
    'keywords': ['커피', '카페']
  }
]
# 예시: groupName별로 DataFrame을 반복 생성
all_data = []
for group in result['results']:
    tmp = pd.DataFrame(group['data'])
    tmp['그룹'] = group['groupName']
    all_data.append(tmp)

merged = pd.concat(all_data)
merged = merged[['그룹', 'period', 'ratio']]
merged.columns = ['그룹', '날짜', '검색지수']
merged.to_csv('multi_keyword_trend.csv', index=False, encoding='utf-8-sig')
print("다중 키워드 CSV 저장 완료.")

💡 마치며

파이썬으로 네이버 데이터랩 API를 활용하면, 수작업 없이 원하는 키워드의 검색 트렌드를 손쉽게 얻을 수 있습니다.

  • 키워드 조사: 블로그 주제, SNS 캠페인, 상품 기획 전 반드시 확인
  • 데이터 시각화: pandas와 Matplotlib로 차트 그리기
  • 자동화 스케줄: cron(리눅스) 혹은 Task Scheduler(윈도우)로 정기 실행

오늘 예제를 완성하셨다면, 주변 키워드로 응용해보세요! 여러분의 블로그 SEO 전략에 큰 도움이 될 거예요.

“손끝에서 펼쳐지는 데이터, 파이썬으로 시작하세요.”

궁금한 점이나 에러가 나올 때, 댓글로 알려주시면 함께 해결해드릴게요!

728x90
반응형