본문 바로가기

Programming/Python

네이버 인기검색어 크롤링을 해보자!(feat.파이썬)


오늘은 파이썬으로 크롤링을 해보자!



1.파이선을 설치한다 & 파이썬 IDE를 설치한다


 여기서



2.프로젝트를 만든다.


Create New Project를 딸깍 클릭하면


이런화면이 나오는데

(community에서는 왼쪽에 아무것도 뜨지않아도 

걱정하지말고 그냥 하시면됩니다.)


빨간 네모칸에 untitled라고 적혀있는데

원하는 제목으로 바꾸면 됩니다.


create 딸깍 클릭





폴더 우클릭 ->New->File 클릭 



이름짓는게 제일 힘듬...


하고싶은파일명.py



3.터미널에서 request, beautiful soup4 설치




왼쪽 하단에  Terminal를 클릭





터미널에 타이핑한 후 엔터

pip install requests




터미널에 타이핑한 후 엔터

pip install beautifulsoup4


설치 완료


4 .코드 작성

import requests
 
 
from bs4 import BeautifulSoup
 
 
# 1.어떤 웹페이지를 수집할 것이냐? URL설정
 
 
url = "https://www.naver.com/"
 
 
# 2. 해당 웹 페이지에 접속해서 데이터를 가져온다.
 
 
data = requests.get(url)
 
 
# print(data.status_code)
 
 
if (data.status_code == requests.codes.ok):
 
 
    print("성공")
 
 
    # 3.그 데이터를 원하는 형태로 파싱
 
 
    # text를 html로 파싱
 
 
    html = BeautifulSoup(data.text, 'html.parser')
 
 
    #  elm = html.select_one("selector")#단일 요소
 
 
    elms = html.select(".PM_CL_realtimeKeyword_list_base .ah_item "

# 리스트 형식으로 반환
 
 
 
    # 4.파싱한 데이터에서 원하는 자료를 찾는다.
 
 
    for elm in elms:
 
 
        a = elm.select_one('a').attrs['href']
 
 
        rank = elm.select_one('.ah_r').text
 
 
        keyword = elm.select_one('.ah_k').text
 
 
        print(rank, keyword, a)
 
 
 
    """
    셀럭터?

    empty tag —> 닫아주는 태그가 없음

    container tag —> 닫아주는 태그가 있음

    tag : div

    id : #NS_item

    class :  .api_item.list_item

    조합 셀렉터 :  span.api_item

    div.list span.api_item

(div.list 안에 span.api_item이있다 ->경로를 건너뜀
    
div.list > span.api_item ->중간경로를 건너뛸순없다 
    
기본적으로 태그로 생각함 , .클래스 #은 아이디
    
"""
 
 
else:
 
    print("실패")
 
 
 
cs


5.Run(간단)

만들었던 파일 우클릭 ->Run 하는 법도 있지만


단축키를 생활화 합시다!!


window(Ctrl + Shift + F10)

Mac(control + Shift + R)


결과물