개요

pytrends 라이브러리의 get_historical_interest() 함수를 사용하면 주어진 시간 범위 내에서 특정 검색어의 시간별 관심도 데이터를 가져올 수 있습니다. 이는 검색어 인기도를 더 세밀하게 이해하고, 일별이나 주별 데이터에서는 보이지 않을 수 있는 트렌드를 식별하는 데 유용합니다.

이 튜토리얼에서는 다음 내용을 다룹니다.

  1. 필요한 라이브러리 임포트
  2. pytrends 요청 설정
  3. 과거 시간별 관심도 데이터 가져오기
  4. 결과 시각화

설치

Pytrends를 설치하려면 pip를 사용하시면 됩니다.

pip install matplotlib

과거 시간별 관심도 데이터 가져오기

먼저 필요한 라이브러리를 임포트하고 pytrends 요청을 설정합니다.

from pytrends.request import TrendReq
import pandas as pd
import matplotlib.pyplot as plt

# Set up pytrends request
pytrends = TrendReq(hl='en-US', tz=360)

다음으로 get_historical_interest() 함수를 사용해 검색어, 시간 범위, 기타 매개변수를 지정합니다.

keywords = ['Python', 'JavaScript']

# Retrieve hourly interest data
hourly_interest = pytrends.get_historical_interest(keywords, year_start=2023, month_start=3, day_start=1, hour_start=0, year_end=2023, month_end=3, day_end=2, hour_end=0, cat=0, geo='', gprop='', sleep=0)

이는 2023년 3월 1일부터 3월 2일까지 ‘Python’과 ‘JavaScript’ 검색어에 대한 시간별 관심도 데이터가 담긴 DataFrame을 반환합니다.

결과 시각화

이제 간단한 라인 차트를 사용해 시간별 관심도 데이터를 시각화할 수 있습니다.

# Plot the hourly interest data
plt.figure(figsize=(12, 6))
plt.plot(hourly_interest.index, hourly_interest['Python'], label='Python')
plt.plot(hourly_interest.index, hourly_interest['JavaScript'], label='JavaScript')

plt.xlabel('Hour')
plt.ylabel('Interest')
plt.title('Hourly Interest for Python and JavaScript')
plt.legend()
plt.show()

이 차트는 지정된 시간 범위에 걸쳐 ‘Python’과 ‘JavaScript’ 모두에 대한 시간별 관심도를 보여주어, 두 검색어의 인기도를 비교하고 트렌드를 식별할 수 있게 해줍니다.

결론

이번 포스트에서는 pytrends 라이브러리의 get_historical_interest() 함수를 사용해 구글 트렌드에서 과거 시간별 관심도 데이터를 가져오는 방법을 시연했습니다. 이 데이터를 깊이 분석함으로써 검색어의 인기도에 대한 귀중한 인사이트를 얻고 소비자 행동을 더 잘 이해할 수 있습니다. 이 튜토리얼에서는 pytrends 요청 설정부터 결과 시각화까지, 시간별 관심도 데이터를 수집하고 분석하는 과정을 다루었습니다.


NOTE : pytrends는 비공식 API를 사용합니다. 이슈가 있다면 여기를 이용해 주세요.

SAMPLE CODE : https://github.com/hobbyworker/google-trend-for-python