스크래핑 툴 개발 질문

알림
|
X

페이지 정보

작성자 no_profile gudtkdml 14.♡.83.89
작성일 2024.04.22 11:20
274 조회
2 추천
쓰기

본문

지난번에 질문에서 알려주신 덕분에 도움을 많이 얻었습니다.

 

알아보다보니 스크래핑도 방식이 꽤 다양하더군요

 * 크로미움 같은 브라우저 엔진을 사용하는 방법(CEF, CefSharp)

   C++로 나온 CEF 를 C#으로 편하게 사용하도록 구현되었습니다.

   헤드리스 브라우저 구현이나 다운로드 관련 코딩 등의 구현이 복잡함. (연구중)

   가볍지만 구현이 복잡, 검색해보니 아래 방법에 비하면 안되는 기능들도 있다고 함.

 

* 크롬, 엣지 등 같은 설치되어 있는 브라우저 전용 브라우저 드라이버를 사용하는 방법(Selenium)

   사용자 컴에 설치된 브라우저에 맞는 브라우저 드라이버를 사용합니다.

   브라우저에 명령어를 입력하거나 원격 디버깅 가능하도록 브라우저 드라이버라는 것이 있더군요.

   크롬은 크롬 드라이버, 엣지는 엣지 웹 드라이버 이렇게 있네요.

 

   대표적으로 Selenium 이 이 방법을 이용하는 것 같습니다.

   헤드리스 브라우저 구현시 --headless 명령어입력, 다운로드 관련 설정도 명령어 입력으로 해결가능.

   구현이 위 방법보다는 그나마 간단함 , 하지만 클라이언트에 설치된 브라우저가 필요함(사용자컴에 크롬 없으면 브라우저 사용 불가능)

   추가 연구 필요(C# 같은 개발환경에서 브라우저 드라이버 사용방법을 연구해야함)

   생각보다 무거워서 프로그램이 느려짐 등 문제가 발생

 

개발자 분들은 후에 상업용으로 스크래핑 툴을 개발하신다면 어떤 방법을 사용하실건가요?

댓글 3 / 1 페이지

건더기님의 댓글

작성자 건더기 (112.♡.35.146)
작성일 04.22 11:30
상용 개발이라면 배포후 어떤 환경에 설치될지 모르니 엔진내장형이어야 문제가 덜 하지 않을까요?
각 사용자별로 설치된 브라우저가 제각각일텐데 그걸 상용 배포하면 클레임 상당할 듯 합니다.....

부산혁신당님의 댓글

작성자 부산혁신당 (172.♡.95.27)
작성일 04.22 11:52
제가 일하면서 비슷한 툴을 파이썬 셀레늄으로 만들었는데 그냥 알리에서 미니피씨 하나 사서 그걸로 그것만 돌립니다. 배포는 할 줄도 모르겠고 할 일도 없어서 이 방법을 쓰는데 크게 도움될만한 답변은 아니겠군요..

간실장님의 댓글

작성자 간실장 (1.♡.173.35)
작성일 04.22 12:13
Selenium 말고도 Playwright도 있습니다.
Playwright는 최신 웹 기술에 더 적합하고, 더 빠른 성능을 제공하는 반면, Selenium은 더 널리 사용되고 검증되어 안정성이 좀 더 좋다 정도로 보면 되고요..
최근에 저는 Playwright 위주로 사용하고 있는데, 이것도 좋습니다..
그외 유료지만 왠만한 인증 통과할수 있는 scrapfly도 있습니다. 애는 왠만한 캡챠를 통과하는걸로 알려져 있습니다.
쓰기
홈으로 전체메뉴 마이메뉴 새글/새댓글
전체 검색