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

Learner님의 프로필 이미지
Learner

작성한 질문수

파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

셀레니움 관련 문의드립니다.

작성

·

168

0

크롤링 관련 기법을 보다 자세히 알아보다 보니 셀레니움이라는 더 다음 단계가 있더라구요.

강사님의 다음 강좌를 수강신청하기 전에 셀레니움 관련 한 가지 문의드리고자 합니다.

동적인 페이지 크롤링 시에는 셀레니움이 반드시 필요한 걸로 아는데,

로그인이 필요한 페이지를 크롤링 할 경우에도 무조건 셀레니움을 사용하여야만 크롤링을 할 수 있는 건가요?

답변 1

1

안녕하세요.

무조건은 아닌데요. 많은 사이트들이 로그인 페이지에서 보다 깊은 보안 설정을 해놓았습니다.

그래서, 셀레니움처럼 아예 사용자인 것처럼 로그인 페이지에 들어가서, 아이디와 패스워드를 넣고, 버튼을 누르는 동작을 자동화하지 않으면, 보안 설정에 걸려서, requests 라이브러리로만은 무리가 있습니다. 예전에 이런 보안 설정이 걸려있지 않은 사이트를 알아내서, requests 로 하는 예를 설명드린 적이 있으나, 이 사이트 마저도 보안 설정을 걸어놓아서, 현재 불가합니다.

다만 로그인 페이지를 자동으로 할 경우를 또 막는 방법도 있습니다. 어떤 사이트보면 자동화해서 로그인을 하는 경우는 체크를 해서, 이미지를 보여주며 이미지 안에 있는 숫자를 넣으라는 식으로 나오게끔 해놓은 경우도 있습니다. (네이버도 그런 케이스입니다.) 이를 또 뚫는 방법도 있지만, 매우 힘이 들고, 뚫어도, 추후에 바로 사이트를 변경해서 막습니다. 그래서 셀레니움만 익히면 로그인이 되는 페이지는 다 된다? 라고 이야기할 수는 없습니다.

다만, 최근 대부분 최신 페이지들은 동적 페이지 기술을 많이 사용하고, 로그인등 다양한 케이스에 대해서, 크롤링을 할 수 있는 현존 최강 기술이 무엇이냐? 이것이 셀레니움이고, 방대한 크롤링을 하기 위한 전문적인 크롤링 프레임워크가 scrapy 입니다. 제가 관련 강의를 기획할 때는 이를 통해, 중급 기술에 익숙해지면서, IT 역량을 쌓으시라고 만든 것입니다. (쉽지는 않기 때문이죠). 둘 다 익혀두면 여러 방면에서 활용이 가능합니다. (셀레니움은 본래 웹서비스 테스트를 자동화하는 기술입니다.)

감사합니다.

Learner님의 프로필 이미지
Learner

작성한 질문수

질문하기