서버나 브라우저에서 HTML 및 XML 문서를 파싱하고 조작할 수 있는 빠른 jQuery 스타일 라이브러리입니다.
jhy/jsoup
DOM 메서드, CSS 셀렉터, XPath를 사용해 실제 웹의 HTML을 파싱하고 스크래핑하며 편집·정제하는 Java 라이브러리입니다.
- 스타
- 11,411
- 포크
- 2,319
- 열린 이슈
- 6
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
jsoup은 웹에서 가져온 HTML과 XML을 다루는 Java 라이브러리입니다. URL에서 페이지를 가져오거나 파일 또는 문자열에서 파싱하고, WHATWG HTML5 사양을 따르는 DOM 트리를 만듭니다. 따라서 생성된 구조는 최신 브라우저에서 만들어지는 구조와 일치합니다. 흔히 태그 수프라고 부르는 유효하지 않거나 뒤죽박죽인 마크업도 적절한 트리로 파싱합니다.
문서를 파싱한 뒤에는 DOM 순회, CSS 셀렉터 또는 XPath로 데이터를 찾고 요소, 속성, 텍스트를 읽거나 변경할 수 있습니다. 정돈된 HTML을 출력하는 기능도 제공합니다. 사용자가 제출한 콘텐츠에는 허용 목록 기반 정제기를 적용해 허용되지 않는 태그와 속성을 제거하고 XSS 공격을 방지할 수 있습니다.
jsoup은 jar 파일로 배포되며 Maven과 Gradle로도 사용할 수 있고, MIT 라이선스를 따릅니다. 프로젝트에서는 Android 사용자가 Java 8 이상 기능을 사용하려면 core library desugaring을 활성화해야 한다고 안내합니다.
핵심 기능
- 01URL, 파일 또는 문자열에서 HTML과 XML을 파싱해 브라우저와 호환되는 DOM을 만듭니다.
- 02CSS 셀렉터, DOM 순회 또는 XPath로 요소를 선택합니다.
- 03요소, 속성, 텍스트를 수정하고 정돈된 HTML을 출력합니다.
- 04허용 목록을 기준으로 신뢰할 수 없는 HTML을 정제해 XSS 위험을 낮춥니다.
- 05잘못된 형식의 실제 웹 마크업도 오류 없이 처리합니다.
활용 사례
- Java 백엔드나 배치 작업에서 웹 페이지의 데이터를 스크래핑합니다.
- 사용자가 제출한 서식 있는 텍스트를 저장하거나 렌더링하기 전에 정제합니다.
- HTML 템플릿과 생성된 콘텐츠를 코드로 편집하거나 다시 작성합니다.
- 테스트나 도구에서 HTML 문서의 링크, 제목 또는 메타데이터를 추출합니다.
빠른 시작
- 1
Maven 빌드에 jsoup 의존성을 추가하세요
<dependency> <!-- jsoup HTML parser library @ https://jsoup.org/ --> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.23.2</version> </dependency> - 2
또는 Gradle 빌드에 jsoup 의존성을 추가하세요
implementation 'org.jsoup:jsoup:1.23.1' - 3
쿡북 소개를 읽고 문서 파싱을 시작하세요
사용 전 알아둘 점
- Java 라이브러리만 제공하므로 JVM과 Java 개발자가 필요합니다.
토픽
자주 묻는 질문
- jsoup은(는) 무엇인가요?
- DOM 메서드, CSS 셀렉터, XPath를 사용해 실제 웹의 HTML을 파싱하고 스크래핑하며 편집·정제하는 Java 라이브러리입니다. jsoup은 웹에서 가져온 HTML과 XML을 다루는 Java 라이브러리입니다. URL에서 페이지를 가져오거나 파일 또는 문자열에서 파싱하고, WHATWG HTML5 사양을 따르는 DOM 트리를 만듭니다. 따라서 생성된 구조는 최신 브라우저에서 만들어지는 구조와 일치합니다. 흔히 태그 수프라고 부르는 유효하지 않거나 뒤죽박죽인 마크업도 적절한 트리로 파싱합니다.
- jsoup은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- jsoup은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- jsoup은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. jsoup의 마지막 커밋은 2026년 11월 4일입니다.
- jsoup은(는) 어디에 사용할 수 있나요?
- Java 백엔드나 배치 작업에서 웹 페이지의 데이터를 스크래핑합니다. 사용자가 제출한 서식 있는 텍스트를 저장하거나 렌더링하기 전에 정제합니다. HTML 템플릿과 생성된 콘텐츠를 코드로 편집하거나 다시 작성합니다. 테스트나 도구에서 HTML 문서의 링크, 제목 또는 메타데이터를 추출합니다.
- jsoup는 어떻게 설치하나요?
- Maven 빌드에 jsoup 의존성을 추가하세요: <dependency> <!-- jsoup HTML parser library @ https://jsoup.org/ --> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.23.2</version> </dependency> 또는 Gradle 빌드에 jsoup 의존성을 추가하세요: implementation 'org.jsoup:jsoup:1.23.1' 쿡북 소개를 읽고 문서 파싱을 시작하세요
- jsoup은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/jhy/jsoup
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Node.js에서 헤드리스 DOM 환경을 실행할 수 있도록 WHATWG DOM 및 HTML 표준을 순수 JavaScript로 구현한 프로젝트입니다.
HTML 문자열을 Node.js와 브라우저에서 React 요소로 변환하는 HTML-to-React 파서입니다.
선언형 웹 컴포넌트를 효율적인 JavaScript로 컴파일해 DOM을 필요한 부분만 직접 업데이트하는 프레임워크입니다.
Virtual DOM 기반의 빠르고 약 4kB 크기인 React 호환 UI 라이브러리로, 최신 컴포넌트 API를 동일하게 제공합니다.