웹 크롤링을 할 때 가장 많이 쓰이는 것들이 있다.
웹 스크래핑 라이브러리 Jsoup과 브라우저 자동화 프레임워크 Selenium이다. 오늘은 이 두개를 비교해서 어떨 때 사용 해야 하는지 정리했다.
Jsoup
- 주 용도: HTML 문서 파싱
- 동작 방식:
- HTTP 요청 → HTML 응답 → HTML 파싱 (DOM 탐색)
- 서버에서 받은 정적인 HTML만 처리
- 특징:
- 빠름 (브라우저 실행 X)
- 설치 간단 (JAR 추가만)
- 단점: 자바스크립트로 그려지는 동적 데이터는 못 봄
(예: React, Vue, AJAX로 불러오는 내용)
- 예시
Document doc = Jsoup.connect("https://example.com").get(); String title = doc.title();
Selenium
- 주 용도: 브라우저 자동화 + 동적 페이지 크롤링
- 동작 방식:
- 실제 브라우저(Chrome, Firefox 등) 구동 → 페이지 렌더링 → DOM 탐색
- JS 실행 결과까지 가져옴
- 특징:
- 자바스크립트 렌더링된 데이터 접근 가능
- 버튼 클릭, 스크롤, 로그인 같은 UI 동작 가능
- 단점: 느림 (브라우저 띄우고 렌더링해야 함)
- 환경 세팅이 복잡 (WebDriver 필요)
- 예시
WebDriver driver = new ChromeDriver();
driver.get("https://example.com");
WebElement title = driver.findElement(By.tagName("h1"));
'IT개념' 카테고리의 다른 글
| Jenkins 설치하기 (0) | 2025.03.11 |
|---|---|
| Jenkins으로 CI/CD 구축하기 (0) | 2025.02.28 |
| 웹 서비스 구조 - 기본 구조 (0) | 2024.11.24 |
| 자료구조와 알고리즘의 연관 관계 (0) | 2024.10.26 |
| 컴파일과 인터프리터 (2) | 2024.10.23 |