본문 바로가기
IT/파이썬

파이썬으로 네이트, 줌, 구글 트랜드 실시간 검색어 크롤링하기

by 뉴스킹덤 2022. 6. 21.

파이썬을 활용하여 네이트, 줌, 구글 트랜드의 실시간 검색어를 한번에 크롤링하는 코드입니다.

 

필요하신 분은 활용하시기 바랍니다.

 
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 = []
print("\n< 네이트 실시간 검색어 >")
for i in keyword_list:
result.append(i[1])
return result

# Zum 실시간 검색어 크롤러
def zum_crawler():
req = requests.get("https://issue.zum.com/")
soup = bs(req.text, 'lxml')
ul = soup.find("ul", {"id":"issueKeywordList"})
word = ul.findAll("span", {"class":"word"})
result = []
print("\n< 줌 실시간 검색어 >")
for i in range(10):
result.append(word[i].text)
return result


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

def list_print(fct) :
count = 1
while True :
if count == 11 :
break
else :
print(str(count) +"위 " + fct[count-1])
count += 1
continue

list_print(nate_crawler())

list_print(zum_crawler())

list_print(google_crawler())


<실행결과>

 

< 네이트 실시간 검색어 >
1위 남주혁
2위 환혼
3위 붉은 단심
4위 성희롱 정지 6개월
5위 최강야구
6위 결혼지옥
7위 배현진
8위 유희열 측 류이치 사카모토에
9위 우리는 오늘부터
10위 당원 자격정지 6개월

< 줌 실시간 검색어 >
1위 남주혁
2위 배현진
3위 한소희
4위 소상공인 손실보전금
5위 이준석
6위 최지우
7위 손석구
8위 환혼
9위 마녀공장
10위 마녀2

< 구글 실시간 검색어 >
1위 남주혁
2위 배현진
3위 이준석
4위 아디다스
5위 유희열
6위 누리호
7위 여준석
8위 카카오게임즈
9위 공공기관 경영평가
10위 최강욱

 

파이썬 실시간 검색어 크롤링하는 방법 네이트, 줌, 구글