[Python] Nate, Zum, Google Trend 실시간 검색어 크롤링 > 그누보드5 팁자료실

그누보드5 팁자료실

[Python] Nate, Zum, Google Trend 실시간 검색어 크롤링 정보

[Python] Nate, Zum, Google Trend 실시간 검색어 크롤링

본문

 

안녕하세요?

 

Nate, Zum의 실시간 검색어와 Google Trend의 최근 인기 검색어를 크롤링하여

 

LOG 파일로 저장하는 파이썬 스크립트를 작성했어요 ^-^

 

Naver와 Daum은 더 이상 실시간 검색어를 제공하지 않기 때문에 부득이 위 3개를 선택했네요.

 

생성된 LOG 파일을 그누보드에서 읽어서 위젯 등의 형태로 적절히 구현하시면 될 것 같아요 :)

 

 


import requests, json
from bs4 import BeautifulSoup as bs
from datetime import datetime

 
# Nate 실시간 검색어 크롤러
def nate_crawler(): 
    now = datetime.now().strftime('%Y%m%d%H%M')
    url = 'https://www.nate.com/js/data/jsonLiveKeywordDataV1.js?v=' + now
    r = requests.get(url).content
    keyword_list = json.loads(r.decode('euc-kr'))
    result = []
    for k in keyword_list:
        result.append(k[1])
    save_file(result, 'nate_trend')    
    return

 
# Zum 실시간 검색어 크롤러
def zum_crawler(): 
    url = 'https://m.search.zum.com/search.zum?method=uni&option=accu&qm=f_typing.top&query='
    html = requests.get(url).content
    soup = bs(html, 'html5lib')
    keyword_list = soup.find('div', {'class' : 'list_wrap animate'}).find_all('span', {'class' : 'keyword'})
    result = []
    for k in keyword_list:
        result.append(k.text.strip())
    save_file(result, 'zum_trend')
    return

 
# Google Trend 최근 인기 검색어 크롤러
def google_crawler(): 
    url = 'https://trends.google.com/trends/api/topdailytrends?hl=ko&tz=-540&geo=US'
    html = requests.get(url).text
    data = json.loads(str(html).split('\n')[1])
    result = []
    for i in range(10):
        result.append(data['default']['trendingSearches'][i]['title'])
    save_file(result, 'google_trend')
    return

 
def save_file(data, filename):
    with open(f'{filename}.log', 'wt', encoding = 'utf-8') as f:
        f.write('\n'.join(data))
    return

 

 

브라우저 개발자도구를 확인해보면 아시겠지만 3개 사이트 모두 동적 웹페이지 형태이기 때문에

 

위와 같이 다소 우회적으로 크롤링을 해야 되더군요~

 

향후 해당 사이트가 업데이트 된다면 부득이 스크립트의 수정이 필요할 수 있습니다 ㅠㅠ

 

그리고 다들 아시겠지만 Google Trend의 인기 검색어는 아쉽게도 우리나라를 지원하지 않기 때문에

 

부득이 미국에서의 인기 검색어를 크롤링했네요~ T.T

 

 

위 스크립트를 실행하여 생성된 LOG 파일을 열어보면,

 

다음과 같이 잘 크롤링 되었음을 확인할 수 있어요!

 

1. Nate 실시간 검색어 크롤링 결과

 

3717471035_1619921464.845.png

 

 

2. Zum 실시간 검색어 크롤링 결과

 

3717471035_1619921520.581.png

 

 

3. Google Trend 최근 인기 검색어 크롤링 결과

 

3717471035_1619921561.1785.png

 

 

여러모로 부족한 스크립트를 읽어주셔서 감사드려요!

 

파이썬 크롤링과 관련된 질문은 언제든지 환영이에요~

 

그럼 냑 회원님들 모두 즐거운 주말 되시고, 5월 첫 주도 화이팅입니다 ^-^

추천
2

댓글 3개

안녕하세요 크롤링을 공부하고 있는데요..
제가 아이때문에 영어 사이트를 결제하여 사용 하고 있는데 안에 있는 음원과 pdf 를
다운받고싶어 음원은 골라서 다운받을 수 있게 파이썬으로 코딩을 해보았는데
pdf 는 받으려면 새창으로 뜨더라고요 이렇게 새창으로 뜨는것도 그 창에서 다운이 가능하게 가능할까요? 완전 초보라 며칠 꽁꽁 싸매고 짜봤는데 ㅎㅎ 여기서 또 막혔네요..
전체 2,426 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT