Python

Python으로 Google Trends 활용해 트렌드 분석하기

Pro.Dev 2024. 12. 16. 12:18
반응형

Python으로 구글 트렌드 분석하기

Google Trends는 현재 전 세계적으로 인기 있는 키워드를 분석할 수 있는 강력한 도구입니다. Python에서는 별도의 API 키 없이 pytrends 라이브러리를 사용하여 Google Trends 데이터를 쉽게 가져올 수 있습니다. 이번 글에서는 pytrends를 활용해 실시간 트렌드와 키워드 분석 방법을 소개합니다.


1. pytrends란?

pytrends는 Google Trends의 웹 요청을 시뮬레이션하여 데이터를 수집하는 비공식 Python 라이브러리입니다. 이 라이브러리를 사용하면 실시간 트렌드, 키워드 검색량, 연관 검색어 등을 손쉽게 가져올 수 있습니다.

  • 장점: API 키가 필요 없으며 간단히 설치 및 사용 가능.
  • 주의사항: Google Trends의 요청 빈도를 초과하면 일시적으로 차단될 수 있습니다.

2. pytrends 설치

Python 환경에 pytrends를 설치하려면 다음 명령어를 실행하세요:

pip install pytrends

설치가 완료되면 바로 Google Trends 데이터를 활용할 수 있습니다.


3. 실시간 트렌드 가져오기

Google Trends의 실시간 인기 검색어를 가져오는 방법은 간단합니다. pytrends.trending_searches 메서드를 사용하면 특정 지역에서 현재 인기 있는 검색어 리스트를 반환받을 수 있습니다.

코드 예제

from pytrends.request import TrendReq

# Google Trends API 초기화
pytrends = TrendReq(hl='en-US', tz=360)

# 실시간 트렌드 가져오기
def get_realtime_trends():
    trending_searches = pytrends.trending_searches(pn='south_korea')  # 'south_korea'는 대한민국 트렌드
    return trending_searches

# 실행
realtime_trends = get_realtime_trends()
print("실시간 트렌드:")
print(realtime_trends.head(10))  # 상위 10개 트렌드 출력

출력 결과 예시

실시간 트렌드:
                      0
0       아이폰 15 출시
1          손흥민 골
2       BTS 신곡 발표
3     2024 올림픽 일정
4         넷플릭스 추천

4. 키워드별 검색량 분석

특정 키워드의 검색량 추이를 분석하려면 pytrends.build_payload 메서드를 사용합니다.

코드 예제

# 키워드 검색량 추이 분석
pytrends.build_payload(kw_list=['AI', 'ChatGPT'], timeframe='today 1-m')  # 지난 1개월 데이터
trend_data = pytrends.interest_over_time()

print(trend_data)

출력 결과 예시

date          AI  ChatGPT
2024-12-01    78       65
2024-12-02    81       67
2024-12-03    84       69

위 데이터는 날짜별 검색량을 보여줍니다. 검색량의 크기는 Google Trends의 상대적인 값으로 표시됩니다.


5. 연관 검색어 가져오기

Google Trends에서 특정 키워드와 연관된 검색어 데이터를 가져올 수도 있습니다.

코드 예제

# 연관 검색어 확인
pytrends.build_payload(kw_list=['AI'])
related_queries = pytrends.related_queries()
print(related_queries['AI']['top'])  # 상위 연관 검색어 출력

출력 결과 예시

            query  value
0      AI tools     95
1      AI trends    89
2  AI software      84

6. 요청 제한 주의사항

pytrends는 비공식 라이브러리로 Google Trends 웹 요청을 시뮬레이션합니다. 따라서 너무 많은 요청을 빠르게 보낼 경우 Google에서 IP를 차단할 수 있습니다. 이를 방지하려면 요청 사이에 일정한 간격을 두세요.

요청 간격 추가 코드

from time import sleep

# 요청 사이에 10초 대기
sleep(10)

7. Make.com으로 Google Trends 데이터 자동화

Google Trends 데이터를 Make.com(구 Integromat)을 사용해 자동화할 수 있습니다. Make.com은 다양한 API와 서비스를 연결해 워크플로를 시각적으로 구성할 수 있는 플랫폼입니다.

Make.com 설정 방법

  1. Make.com 계정 생성 및 로그인

    • Make.com에 가입한 후 로그인합니다.
  2. 새 시나리오(Scenario) 생성

    • 대시보드에서 "+ 새 시나리오"를 클릭합니다.
    • Google Trends 데이터를 가져오고 저장할 워크플로를 구성합니다.
  3. PythonAnywhere를 사용하여 Python 스크립트 실행

    • PythonAnywhere에 가입 후 Python 스크립트를 업로드합니다.

    • 업로드할 스크립트 예제:

      from flask import Flask, jsonify
      from pytrends.request import TrendReq
      
      app = Flask(__name__)
      
      @app.route('/trends', methods=['GET'])
      def get_trends():
          pytrends = TrendReq(hl='en-US', tz=360)
          trending_searches = pytrends.trending_searches(pn='south_korea')
          return jsonify(trending_searches[0].tolist())
      
      if __name__ == '__main__':
          app.run()
    • PythonAnywhere에서 실행하면 https://yourusername.pythonanywhere.com/trends와 같은 API 엔드포인트가 생성됩니다.

  4. Make.com에 HTTP 모듈 추가

    • "HTTP" 모듈을 추가하고 GET 요청으로 PythonAnywhere API를 호출합니다.
    • 반환된 JSON 데이터를 Make.com의 다음 단계로 넘깁니다.
  5. Google Sheets 모듈 연결

    • "Google Sheets" 모듈을 추가하여 트렌드 데이터를 시트에 저장합니다.
    • 저장 형식 예시:
      날짜      | 키워드
      2024-12-13 | 키워드1
      2024-12-13 | 키워드2
  6. 스케줄링 설정

    • 워크플로의 실행 주기를 설정합니다.
    • 예: 매일 오전 9시에 실행되도록 스케줄링.

8. 활용 아이디어

  • 실시간 트렌드 분석: 지역별 인기 키워드를 수집하여 마케팅 전략에 활용.
  • SEO 최적화: 검색량이 높은 키워드를 블로그 콘텐츠나 유튜브 제목에 반영.
  • 경쟁 분석: 특정 키워드와 연관된 트렌드를 분석하여 경쟁사의 전략 이해.

9. 마무리

Google Trends는 현재의 관심사를 파악하고 콘텐츠 전략을 수립하는 데 매우 유용한 도구입니다. pytrends와 Make.com을 활용하면 트렌드 데이터를 자동화하고 분석할 수 있습니다. 이를 통해 효율적인 의사결정을 내릴 수 있습니다.

궁금한 점이 있거나 추가적인 활용법을 알고 싶다면 댓글로 남겨주세요! 😊

반응형