본문 바로가기

개발/Python

python selenium url 페이지 존재 여부 검사

Python에서 Selenium을 사용하여 웹 페이지의 존재 여부를 검사하고, 페이지가 존재하지 않으면 오류 메시지를 출력하며, 페이지가 존재하면 "페이지 존재"를 출력하는 스크립트를 작성할 수 있습니다. 다음은 예제 코드입니다.

from selenium import webdriver
from selenium.common.exceptions import WebDriverException, NoSuchElementException
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By

# 웹드라이버 서비스 경로를 설정합니다.
service = Service('chromedriver')  # 크롬 드라이버 경로 입력
driver = webdriver.Chrome(service=service)

# URL 검사 함수
def check_page(url):
    try:
        driver.get(url)
        if "404" in driver.title or "Page Not Found" in driver.page_source:
            print("페이지 오류: 존재하지 않음")
        else:
            print("페이지 존재")
    except WebDriverException as e:
        print(f"오류 발생: {e}")

# URL 예시
test_url = "https://www.example.com"

# URL 검사 실행
check_page(test_url)

# 웹드라이버 종료
driver.quit()

코드 설명:

  • webdriver와 Service 모듈을 사용하여 웹드라이버를 실행합니다.
  • check_page 함수는 페이지를 열고, 페이지 타이틀이나 페이지 소스에 "404" 또는 "Page Not Found"와 같은 텍스트가 있는지 확인합니다.
  • WebDriverException을 사용하여 페이지 접근 시 발생할 수 있는 오류를 예외 처리합니다.
  • 마지막에 driver.quit()를 호출하여 드라이버를 닫습니다.

이 코드에서는 ChromeDriver가 필요하며, 드라이버의 경로는 환경에 맞게 설정해야 합니다.