[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 실시간 검색어 크롤링 결과
2. Zum 실시간 검색어 크롤링 결과
3. Google Trend 최근 인기 검색어 크롤링 결과
여러모로 부족한 스크립트를 읽어주셔서 감사드려요!
파이썬 크롤링과 관련된 질문은 언제든지 환영이에요~
그럼 냑 회원님들 모두 즐거운 주말 되시고, 5월 첫 주도 화이팅입니다 ^-^
!-->
추천
2
2
댓글 3개
화이팅입니다
@선구자 오오~ 감사합니다 :)
좋은 주말 되시고, 항상 건강하세요! ^-^
좋은 주말 되시고, 항상 건강하세요! ^-^
안녕하세요 크롤링을 공부하고 있는데요..
제가 아이때문에 영어 사이트를 결제하여 사용 하고 있는데 안에 있는 음원과 pdf 를
다운받고싶어 음원은 골라서 다운받을 수 있게 파이썬으로 코딩을 해보았는데
pdf 는 받으려면 새창으로 뜨더라고요 이렇게 새창으로 뜨는것도 그 창에서 다운이 가능하게 가능할까요? 완전 초보라 며칠 꽁꽁 싸매고 짜봤는데 ㅎㅎ 여기서 또 막혔네요..
제가 아이때문에 영어 사이트를 결제하여 사용 하고 있는데 안에 있는 음원과 pdf 를
다운받고싶어 음원은 골라서 다운받을 수 있게 파이썬으로 코딩을 해보았는데
pdf 는 받으려면 새창으로 뜨더라고요 이렇게 새창으로 뜨는것도 그 창에서 다운이 가능하게 가능할까요? 완전 초보라 며칠 꽁꽁 싸매고 짜봤는데 ㅎㅎ 여기서 또 막혔네요..