[java] Jsoup을 사용하여 웹페이지 요청 시간 설정하기
웹 크롤링 또는 웹 스크래핑을 수행할 때, Jsoup은 매우 유용한 자바 라이브러리입니다. 그러나 기본적으로 Jsoup은 웹페이지 요청 시간에 제한을 두고 있지 않습니다. 이는 경우에 따라서는 문제가 될 수 있습니다. 예를 들어, 웹페이지가 응답이 없거나 매우 느린 경우에 프로그램이 늦게 종료되어야 하는데, Jsoup은 기본적으로 무기한 대기하게 됩니다.
그러나 다행히도 Jsoup을 사용하여 웹페이지 요청 시간을 설정할 수 있습니다. 아래의 예제 코드를 통해 웹페이지 요청 시간을 설정하는 방법을 알아보겠습니다.
의존성 추가하기
먼저, Maven 프로젝트를 사용하는 경우 pom.xml
파일에 다음과 같이 Jsoup 의존성을 추가해야 합니다.
<dependencies>
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.14.1</version>
</dependency>
</dependencies>
웹페이지 요청 시간 설정하기
다음은 Jsoup을 사용하여 웹페이지 요청 시간을 설정하는 예제 코드입니다.
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import java.io.IOException;
public class WebPageRequestTimeoutExample {
public static void main(String[] args) {
String url = "https://example.com";
int timeoutMillis = 5000; // 요청 시간 제한을 5초로 설정
try {
Connection connection = Jsoup.connect(url).timeout(timeoutMillis);
Document document = connection.get();
// 웹페이지 내용을 처리하는 로직 작성
// ...
} catch (IOException e) {
// 예외 처리
e.printStackTrace();
}
}
}
위의 예제 코드에서는 Jsoup.connect(url)
메서드를 호출하여 연결(Connection) 객체를 얻고, timeout(timeoutMillis)
메서드를 사용하여 웹페이지 요청 시간을 설정합니다. 이 예제에서는 요청 시간을 5초로 설정하였습니다.
결론
Jsoup을 사용하여 웹페이지 요청 시간을 설정하는 방법에 대해 알아보았습니다. 요청 시간을 설정함으로써 웹크롤링 또는 웹 스크래핑 작업을 보다 안정적으로 수행할 수 있습니다.