구글 트렌드(실시간 인기 급상승 검색어) selenium 삽질일기
Language/Python

구글 트렌드(실시간 인기 급상승 검색어) selenium 삽질일기

뉴비뉴 2019. 9. 23.

구글링의 도움을 받아 해보려고했지만 자료가 많이 없어서 시간이 많이 오래걸렸던 삽질입니다.

 

posts = driver.find_element_by_class_name("title")

이렇게 받아서 print로 posts를 찍어보면 "06년생 폭행" 제일 상위에 있는 값만 가져와졌습니다.

그래서 posts를 dict형으로 만들어주고 반복문으로 돌려봐도 "06년생 폭행"만 나오는 상황이였습니다.

 

구글링을 해보니 트렌드를 크롤링한 예시가 없고, 공식문서를 자세히 봤어야하는데

자세히 안봐서 삽질을 하게 되었습니다.

 

방법은 아주 간단합니다.

 

driver.find_elements_by_class_name("title") 을 해주면 됩니다.

 

구글의 실시간 인기트랜드를 가져오는 코드는 아래와 같습니다.

from selenium import webdriver

# 다운 받은 chromdriver의 위치를 지정해준다.
driver = webdriver.Chrome('C:\chromedriver.exe')
driver.implicitly_wait(1)
driver.get('https://trends.google.co.kr/trends/trendingsearches/realtime?geo=US&category=all')

numbers = driver.find_elements_by_class_name("index")
titles = driver.find_elements_by_class_name("title")
for i in range(10): # 상위 10개를 출력할 때 zfill을 이용해 한 자리 수에는 0 채우기
    print(str(numbers[i].text.zfill(2)) + ' ' + titles[i].text)
    
    
    
    
    
    
    
    
    
# # google
# def google_trend():
#     from selenium import webdriver
#     rank_data = {}
#     # 다운 받은 chromdriver의 위치를 지정해준다.
#     driver = webdriver.Chrome('C:\chromedriver.exe') # 정상작동
#     driver.implicitly_wait(3)
#     driver.get('https://trends.google.co.kr/trends/trendingsearches/realtime?geo=US&category=all')
#     while True:
#         rank_num = driver.find_elements_by_class_name("index")
#         rank_title = driver.find_elements_by_class_name("title")
#         for i in range(10):
#             rank_data[i] = rank_title[i].text
#             cprint(str(rank_num[i].text.zfill(2)) + ' ' + rank_title[i].text, 'yellow')
#         time.sleep(5)  # 5초 마다 반복
#         os.system('cls')  # 화면 클리어
#         return rank_data
#
#
# if __name__ == '__main__':
#     GoogleRank.objects.all().delete()
#     rank_data_dict = google_trend()
#     for n, t in rank_data_dict.items():
#         GoogleRank(rank_num=n + 1, rank_title=t).save()
#     print('Google 업로드 완료')

도움받은 URL

https://www.slideshare.net/wangwonLee/2018-datayanolja-moreeffectivewebcrawling

 

[2018 데이터야놀자] 웹크롤링 좀 더 잘하기

2018 데이터야 놀자 '웹 크롤링 좀 더 잘하기'의 세션 발표자료입니다.

www.slideshare.net

https://beomi.github.io/gb-crawling/posts/2017-03-01-HowToMakeWebCrawler-Save-with-Django.html

 

'Language > Python' 카테고리의 다른 글

f-string: expressions nested too deeply 해결법  (2) 2019.11.28
AWS, Docker  (0) 2019.11.22
피보나치 수열  (0) 2019.07.17
점프 투 파이썬 - 프로그래밍  (0) 2019.07.17
점프 투 파이썬 - 외장 함수  (0) 2019.07.16

댓글

💲 추천 글