강의

멘토링

커뮤니티

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

JAB님의 프로필 이미지
JAB

작성한 질문수

현존 최강 크롤링 기술: Scrapy와 Selenium 정복

실전 크롤링: 브라우저를 제어해서 다양한 데이터 가져오기

키보드마우스 동작 자동화.

해결된 질문

작성

·

243

0

강의 내용 중 7분50초쯤에,

WebDriverWait, TimeoutException 함수가 나오면, 일반적으로 키보드 클릭과 같은 action을 취할때,  좀 다른 것을 쓴다면서 ActionChains(driver).click(~~).perform()을 주로 쓴다고 하셨는데, 

예를들어, 

find_element_by_css_selector('~~').click()

find_element_by_css_selector('~~').send_keys(Keys.RETURN)

같은 것을 사용하면 나중에 문제가 문제가 생기나요?

아니면, 딱히 특별한 이유는 없고, 보통 개발자들이 그냥 그렇게 사용하는 건가요? 아님 특별한 이유가 있는건가요? 

갑자기 궁금증이 생겨서 질문드립니다.

답변 1

0

안녕하세요.

한가지 엑션씩 명령을 할 것이냐, 여러 엑션을 한번에 명령할 것이냐의 차이입니다.

find_element_by_css_selector('~~').click()

find_element_by_css_selector('~~').send_keys(Keys.RETURN)

이렇게 해도 되고,

find_element_by_css_selector('~~').click().send_keys(Keys.RETURN).perform()

과 같이 해도 됩니다. 다만 이렇게 여러명령을 한번에 할 경우, 역시 브라우저 시간차로 간헐적으로 정상동작 안할 수 있기 때문에, 이 경우에는 하나씩 명령하되 중간에 sleep()을 두어서 보다 안정적으로 실행될 수 있도록 하는 경우도 많습니다.

감사합니다.

JAB님의 프로필 이미지
JAB

작성한 질문수

질문하기