파이썬을 활용하여 네이트, 줌, 구글 트랜드의 실시간 검색어를 한번에 크롤링하는 코드입니다.
필요하신 분은 활용하시기 바랍니다.
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위 최강욱