인프런 커뮤니티 질문&답변
셀리니움 관련 몇가지 질문 남겨요.
작성
·
254
0
선생님,
덕분에 프로젝트 하나 성공적으로 끝나려 합니다.
몇가지 의문점 남겨서 적어봅니다.
requests 모듈에서도 로긴방법 등 회피요령(토큰, 헤더 등)을 알려주셨는데요. selenium은 절대로 이런 경우를 맞닥들일 일이 없나요? 혹시 맞닥들인다면 어떻게 문법을 적어야할지 모르겠습니다.
혹시 로긴할때 selenium대신 requests를 써야만 하는 이유가 있나요? 아무리 봐도 selenium이 너무 편하고 좋은 느낌이 들어서요.
- selenium을 한마디로 요약하면 웹브라우저 상 하나하나 클릭해야할 일을 코딩으로 하기위한 모듈로 생각하면 될까요?
너무 감사합니다!
답변 2
0
답변 감사합니다!! 크롤링 고급강의를 목이 빠지게 기다리고 있습니다. 준비해주시는 동안 기존 강의 더 열공하겠습니다! 감사합니다. 개인적으로 뭔가 정말 어려운 사이트들만 모아서 노하우를 알려주시는 것도 저희에게 아주 소중한 기회가 될 것 같습니다!
0
네 좋은 질문입니다. 이성민 님
결론부터 이야기 하면 있습니다.
서버측 개발자는 항상 봇들에 대한 방지 코드를 넣어두곤 합니다.
주로 대형 포털 사이트일수록 엄격하겠지요.
하지만 브라우저를 통해서 접속을 허용하는 한 코드로써 대부분 크롤링을 수행할 수 있습니다.
selenium으로 만약 접속 및 컨트롤이 되지 않는다면 response 되는 에러 코드를 보고
그에 맞는 header값들을 넘겨서 수행하실 수 있습니다.
다만, 극히 드문일이지만, 서버측 javascript 단에서 진짜 브라우저인지 (pdf 뷰어를 가지고 있는지) 이런 것들로 체크해논 사이트들도 있지만, 아직까지는 거의 보지 못했습니다.
https://stackoverflow.com/questions/29916054/change-user-agent-for-selenium-driver
위에 링크를 보시면 header를 넣는것을 확인하실 수 있습니다.
requests 는 굳이 사용안하셔도 selenium 만 단독으로도 사용이 가능하겠죠?
requests가 편해서 사용한 것일 뿐입니다.
감사합니다.





