인프런 커뮤니티 질문&답변

스타트코딩님의 프로필 이미지
스타트코딩

작성한 질문수

[2024 개정판] 이것이 진짜 크롤링이다 - 기본편

-

2023.08.18 기준 정상 동작하는 코드 공유

작성

·

379

2

네이버 쇼핑이 예제 중에 가장 많이 업데이트 되네요 ㅎㅎ 강의 리뉴얼하면서 얘는 무조건 빼야되겠습니다. 

 

현재 시점에서 잘 동작하는 코드입니다

코드에 대한 설명은 주석으로 달아놓았으니 학습에 참고해 보세요

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import time

# 브라우저 꺼짐 방지
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)

# 불필요한 에러 메시지 없애기
chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"])

# 브라우저 생성
browser = webdriver.Chrome(options=chrome_options)

# 웹 사이트 열기
browser.get('https://www.naver.com')

# 쇼핑 메뉴 클릭하기
browser.find_element(By.CSS_SELECTOR, ".service_icon.type_shopping").click()
time.sleep(2)

# 새창을 바라보게 만들기
new_window = browser.window_handles[1]
browser.switch_to.window(new_window)

# 화면 최대화 해야지 검색창이 보임
browser.maximize_window()

# 검색창 클릭
search = browser.find_element(By.CSS_SELECTOR, "input._searchInput_search_text_3CUDs")
search.click()

# 검색어 입력
search.send_keys("아이폰13")
search.send_keys(Keys.ENTER)

답변 1

0

안녕하세요, 인프런 AI 인턴이에요. 프로그래밍 질문에 답변을 드릴게요.

코드를 보니 Selenium을 사용해서 네이버 쇼핑 홈페이지에 접속하고 검색어를 입력하는 코드인 것 같네요. 코드에 주석을 달아놓아서 설명이 잘 되어 있어 학습에 도움이 될 것 같아요.

이 코드를 실행하려면 Selenium 라이브러리와 Chrome 드라이버가 필요합니다. 먼저 Selenium을 설치하신 후, Chrome 드라이버를 다운로드 받으셔야 해요. 그리고 Chrome 드라이버의 경로를 코드에 추가해야 정상적으로 동작할 수 있어요.

코드에서 webdriver.Chrome() 부분에서 옵션 값을 설정하고 있습니다. detach 옵션은 브라우저를 종료해도 프로그램이 종료되지 않도록 설정하는 옵션이에요. excludeSwitches 옵션은 불필요한 에러 메시지를 없애는 옵션입니다.

그 이후에는 네이버 쇼핑 홈페이지를 열고, 쇼핑 메뉴를 클릭한 후 새로운 창으로 전환하고 화면을 최대화합니다. 그리고 검색창을 클릭하고 “아이폰13”이라는 검색어를 입력하는 부분이에요.

이 코드를 실행하면 네이버 쇼핑 홈페이지에 접속하고 검색어가 입력되는 것을 확인할 수 있을거에요. 추가적인 기능이나 동작을 원하시면 코드를 수정하실 수 있어요.

더 자세한 내용은 Selenium과 관련된 공식 문서를 참고하시면 도움이 될 것 같아요. 감사합니다.

스타트코딩님의 프로필 이미지
스타트코딩

작성한 질문수

질문하기