Backend/JAVA_Crawling

01. JAVA를 이용한 크롤링(Crawling, JSOUP)

개발개발빈이 2022. 6. 10. 19:52

○ 크롤링(crawling)

    - 크롤링(crawling), 스크레이핑(scraping)

    - 웹 페이지를 그대로 가져와서 거기서 데이터를 추출해 내는 행위

    - 로봇 배제 표준(robots.txt) : 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 규약

로봇이 robots.txt 파일을 읽고 접근을 중지하는 것이 목적

    - 크롤링 시 주의할 점 : 크롤링 해도 된다고 해서 저작권 문제까지 자유로운 것은 아님!

                                         신문기사, 책, 논문, 사진 등의 자료들은 저작권에 특히 주의해야함

 

JSOUP

    - JSOUP 라이브러리 : 자바로 만들어진 HTML parser

                                        DOM 구조를 추적하거나 CSS 선택자를 사용하여 데이터를 찾아 추출할 수 있다

                                        HTML 문서에 저장된 데이터를 구문 분석, 추출 및 조작하도록 설계된 오픈 소스

    - JSOUP 다운로드: 다운로드 링크 > jsoup-1.15.1.jar 다운로드

현재 홈페이지에 올라와 있는 버전은 1.15.1 / 내가 다운받을 당시에는 1.14.3 였음(2022.04기준)

 

    - 해당 프로젝트에 라이브러리 추가 : src/main/webapp/WEB-INF/lib/jsoup.jar 붙여넣기

    - 외부라이브러리 추가 후에는 ① F5 ② Validate ③ Project > Clean 으로 프로젝트 새로고침해주기

    - JSOUP 라이브러리 핵심 클래스

        ① Document 클래스 : 연결해서 얻어온 HTML 전체 문서

        ② Element  클래스 : Document의 HTML 요소

        Elements 클래스 : Element가 모인 자료형