카테고리 없음
파이썬으로 네이버 키워드 수집하는 초보자 가이드
불타는 신디
2025. 5. 13. 10:30
728x90
반응형
🐍 파이썬으로 네이버 키워드 수집하는 초보자 가이드
인터넷 세상에서 키워드는 콘텐츠의 나침반과 같습니다. 어떤 키워드를 잘 활용하느냐에 따라 블로그 방문자 수가 달라지기도 하죠. 오늘은 **파이썬(Python)**을 사용해 네이버 데이터랩 API로 키워드를 자동으로 수집하고, 엑셀 혹은 CSV 파일로 저장하는 방법을 단계별로 배워보겠습니다.
이 글을 따라 하면, 코드 한 줄씩 실행하며 초보자도 문제없이 키워드 데이터를 받아볼 수 있어요.
📋 준비물
- 파이썬 3.x가 설치된 PC
- 터미널(또는 명령 프롬프트)
- 네이버 개발자 센터에서 발급받은 Client ID와 Client Secret
- Python 라이브러리: requests, pandas
pip install requests pandas
1단계. 네이버 데이터랩 API 키 발급받기
- 네이버 개발자 센터에 로그인 후, 내 애플리케이션 메뉴로 이동
- 애플리케이션 등록 버튼 클릭 → 이름, 사용 API에서 Data Lab Search 선택
- 등록하면 Client ID와 Client Secret 값을 확인할 수 있습니다
- 이 두 값을 안전하게 보관하고, 코드에서는 환경 변수로 관리할 예정입니다.
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
반응형