Selenium 3

Selenium을 이용한 웹 크롤링 - 3 (Iframe 이동)

Selenium을 이용하여 크롤링을 하다보면 개발자 도구로 분명히 Element 정보를 확인했는데 동작이 되지 않는 경우가 있습니다. 이럴 경우 페이지 소스를 열어 해당 태그 내용이 존재하는지 확인해주세요. 제가 크롤링 작업을 하던 페이지의 경우 아래와 같이 Iframe 형태로 데이터를 제공하고 있었습니다. 1. Iframe 정보 확인 - 개발자 도구를 이용하여 아래 클럽 버튼에 대한 xpath를 획득한 후 클릭하는 작업을 실행 해줍니다. - 잔여타임 예약 이동 및 클럽 선택 - 아래 코드를 실행 했지만 아무런 반응이 없습니다. 2. 소스 코드 확인 - Ctrl + U 버튼을 통해 소스 코드를 확인 합니다. - 소스 코드 확인 결과 위와 같이 확인되며, 아래와 같은 버튼에 대한 정보는 확인되지 않습니다...

Selenium을 이용한 웹 크롤링 - 2 (세션 종료 및 이동)

이전 포스트에 이어서 접속한 페이지에서 발생하는 팝업 등을 제거하거나 페이지를 이동하는 작업을 해보겠습니다. 1. Session 확인 - 이전 포스트에서 로그인 완료 시 아래와 같이 창이 2개가 발생하는 것을 볼 수 있습니다. - 팝업창만 제거 하기위해 현재 열러 있는 세션의 정보를 획득해 보겠습니다. - window_handles 명령어를 통해 세션 정보를 획득합니다. 2. Session 종료 세션은 실제 창이 떠있는 순서로 배열 형태로 되어있으며, 가장 아래에 있는 메인 세션을 제외하고 종료해보겠습니다. - 현재 열려 있는 세션 개수 확인 - while문을 사용하여 세션을 이동 후 가장 아래 세션(window_handles[0]) 제외하고 종료해줍니다. - 위의 코드에 따라 팝업이 종료되어 세션이 1..

Selenium을 이용한 웹 크롤링 - 1 (기초)

1. Selenium이란? Beautifulsoup 등 기존 크롤러들의 한계를 극복하기 위해 마우스, 키보드의 동작이나 디스플레이에 바로 나타나는 HTML과의 상호작용을 할 수 있는 Python 라이브러리 중 하나이다. 예를 들어, 자동으로 ID나 PW를 받아 로그인을 해주거나, 팝업을 지워주거나, 페이지를 이동하는 작업 등을 할 수 있다. 2. Selenium 설치 설치 전에 본인의 Python 버전 및 실행 위치 등을 체크해줍니다. - Powershell 실행 > python >>> import sys >>> sys.executable - 저는 3.8.1 버전을 사용하고 있습니다. - 현재 Python 공식 사이트 기준 3.9.0 버전까지 출시가 된걸로 확인이 됩니다. >>> Ctrl+Z >>> En..