크롤링은 웹사이트의 데이터를 자동으로 수집하는 과정을 의미합니다.
주로 웹 페이지에서 HTML 데이터를 읽고 원하는 정보(텍스트, 이미지, 링크 등)를 추출하여 데이터로 활용합니다.
예시로 뉴스 기사, 상품 정보, 게시글 내용을 자동으로 수집할 때 사용됩니다.
Jsoup은 Java 기반의 HTML 파싱 라이브러리로, 웹 크롤링 작업에 자주 사용됩니다.
이 라이브러리를 통해 HTML 문서를 가져오고, DOM 탐색 및 조작, 데이터 추출 등을 쉽게 할 수 있습니다.
jsoup을 사용하기 이전의 세팅은 다음과 같다.
gradle)
implementation 'org.jsoup:jsoup:1.15.3'
우선 공식 문서의 링크는 다음과 같다.
https://jsoup.org/
위 사이트의 예시를 먼저 보도록 하겠다.
"위키피디아 홈페이지를 가져와 DOM으로 파싱하고, 'In the news(최근 소식)' 섹션에 있는 헤드라인들을 Element 리스트로 선택하세요. (온라인 샘플, 전체 소스)"
Document doc = Jsoup.connect("https://en.wikipedia.org/").get();
log(doc.title());
Elements newsHeadlines = doc.select("#mp-itn b a");
for (Element headline : newsHeadlines) {
log("%s\n\t%s",
headline.attr("title"), headline.absUrl("href"));
}
크롤링할 url을 연결한다.
document를 가져온다.
가져온 document에서 element를 찾는다.
Elements items = doc.select(".test");
Elements tags = doc.select(".test a");
Elements items = doc.select("#test");
출처:
1. https://velog.io/@minjiki2/%ED%81%AC%EB%A1%A4%EB%A7%81-Java%EB%A1%9C-%EC%9B%B9-%ED%81%AC%EB%A1%A4%EB%A7%81%ED%95%98%EA%B8%B0-Jsoup
2. https://diary-developer.tistory.com/12
3. https://jobc.tistory.com/78