프로그래밍/2022

파이썬 독학 selenium, beautifulsoup 사용법 기초 - 셀레니움 네이버 크롤링

김플 2023. 2. 7. 17:45
반응형

파이썬 셀레니움(selenium)과 뷰티풀수프(beautifulsoup)를 사용하여 네이버 크롤링 하는 예제 강의입니다.

원하는 키워드로 네이버 view 탭에 접속한 다음 스크롤 하여 원하는 만큼의 검색 결과를 스크래핑합니다.

이 강의에서 사용하는 파이썬은 3.10.6 버전이며 편집기는 vscode입니다.

사용하는 패키지는 beautifulsoup, selenium입니다.

 

from bs4 import BeautifulSoup
from selenium import webdriver
import time

base_url = "https://search.naver.com/search.naver?where=view&sm=tab_jum&query="

keyword = input("검색어를 입력하세요 : ")

search_url = base_url + keyword

driver = webdriver.Chrome()

driver.get(search_url)

time.sleep(3)

for i in range(5):
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(2)

html = driver.page_source

soup = BeautifulSoup(html, "html.parser")

# items = soup.select(".api_txt_lines.total_tit")

# for e, item in enumerate(items, 1):
#     print(f"{e} : {item.text}")

items = soup.select(".total_wrap.api_ani_send")

for rank_num, item in enumerate(items, 1):
    print(f"<<{rank_num}>>")
    ad = item.select_one(".link_ad")
    if ad:
        print("광고입니다.")
        continue

    blog_title = item.select_one(".sub_txt.sub_name").text
    print(f"{blog_title}")

    post_title = item.select_one(".api_txt_lines.total_tit._cross_trigger")
    print(f"{post_title.text}")

    print(f"{post_title.get('href')}")
    print(f"{post_title['href']}")

    print()

driver.quit()

자세한 사용법은 아래 영상을 참고 바랍니다.
https://youtu.be/FVA_lqbqWiM

 

반응형

▼웹크롤링&자동화를 제대로 배워보고 싶다면?▼

 

실습으로 끝장내는 파이썬 웹 크롤링과 웹 페이지 자동화 - 인프런 | 강의

쉬운 설명과 다양한 실습으로 어떠한 사이트라도 원하는 대로 파이썬(Python) 웹 크롤링을 할 수 있게 됩니다., - 강의 소개 | 인프런...

www.inflearn.com