티스토리 뷰
웹 크롤링(실시간 데이터 수집)
정식 명칭은 web scraping이며, 웹 사이트에서 원하는 정보를 추출하는 것을 의미한다.
보통 웹 사이트는 HTML 기반이므로 정보를 추출할 페이지에서 개발자 모드 실행 후
원하는 태그를 검색하는 스킬이 요구된다.
웹 크롤링 라이브러리
1. Jsoup
정적 데이터를 비교적 빠르게 수집할 수 있지만 브라우저가 아닌
HTTP Request를 사용하기 때문에 동적 데이터를 수집하기 위해서는
해당 서버의 인증 키 요구 등 수집할 수 없는 경우가 많다.
2. Selenium
Jsoup에 비해 느리지만 브라우저 드라이버를 사용하여 동적 데이터도 수집 가능하다.
주로 python에서 많이 사용
※ 셀레니움 사용 시 주의사항
- 브라우저의 url을 변경할 때에는, 미리 WebElement를 담아놓았던 객체의 해당 필드를 전부 다 사용하고 나서 url이 변경되어야 한다.
- 해당 페이지의 작업은 무조건 다 끝내고 URL을 변경하자!
- 알고리즘 상 불가능하다면, 기존 URL로 변경 후 작업하자!
'2022 > java 2' 카테고리의 다른 글
day17[date,calendar,파일입출력,MVC모델] (1) | 2022.08.23 |
---|---|
day16[Thread,Singleton] (0) | 2022.08.19 |
day15[Thread,join(),Synchronized] (0) | 2022.08.18 |
day14[Collection Framework_HashSet,Iterator,HashMap,Stream] (0) | 2022.08.18 |
day13[ArrayLIst 실습,빠른for문] (0) | 2022.08.18 |