[java] Jsoup을 사용하여 웹페이지 내 텍스트 추출하기
Java로 웹 크롤링을 할 때, Jsoup은 매우 유용한 라이브러리입니다. Jsoup을 사용하면 HTML 문서를 파싱하고 웹페이지 내의 텍스트를 추출할 수 있습니다. 이번 포스트에서는 Jsoup을 사용하여 웹페이지의 텍스트를 추출하는 방법에 대해 알아보겠습니다.
1. Jsoup 라이브러리 추가하기
먼저, 프로젝트에 Jsoup 라이브러리를 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음과 같이 의존성을 추가합니다.
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.13.1</version>
</dependency>
Gradle을 사용한다면, build.gradle 파일에 다음과 같이 의존성을 추가합니다.
dependencies {
implementation 'org.jsoup:jsoup:1.13.1'
}
의존성을 추가한 후에는 해당 라이브러리를 사용할 수 있습니다.
2. 웹페이지 내 텍스트 추출하기
다음은 웹페이지 내의 텍스트를 추출하는 간단한 예제 코드입니다.
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class WebPageTextExtractor {
public static void main(String[] args) throws Exception {
// 웹페이지 URL
String url = "https://www.example.com";
// Jsoup을 사용하여 웹페이지를 파싱합니다.
Document doc = Jsoup.connect(url).get();
// 웹페이지 내의 모든 텍스트 요소를 선택합니다.
Elements elements = doc.select("body").select("*:not(script)");
// 텍스트 요소의 내용을 출력합니다.
for (Element element : elements) {
// 필요한 경우, 특정 태그의 텍스트를 추출하고 싶다면 element.select("태그이름")을 사용합니다.
System.out.println(element.text());
}
}
}
위의 코드를 실행하면, 지정한 URL의 웹페이지 내에 있는 모든 텍스트가 출력됩니다.
3. 결과 확인하기
위의 코드를 실행한 후, 콘솔 출력을 확인하면 웹페이지에서 추출한 텍스트를 볼 수 있습니다. 이를 통해 Jsoup을 사용하여 웹페이지 내 텍스트를 추출하는 방법을 익힐 수 있습니다.
결론
이번 포스트에서는 Jsoup을 사용하여 웹페이지 내 텍스트를 추출하는 방법에 대해 알아보았습니다. Jsoup은 간편한 문법으로 HTML 파싱을 제공하므로 웹 크롤링에 매우 유용한 도구입니다. Jsoup의 다양한 기능을 활용하여 웹페이지 내 다른 요소들도 추출해볼 수 있습니다.