JavaでHTML解析にJSoup関数を使用する方法

WBOY
リリース: 2023-06-26 13:41:33
オリジナル
1524 人が閲覧しました

HTML は Web ページの基本的な表現です。 Java で HTML ドキュメントのコンテンツを取得して操作する場合は、JSoup 関数などのオープンソース解析ツールを使用する必要があります。 JSoup は HTML ドキュメントを処理するための Java ライブラリで、HTML ドキュメントから特定のデータと要素を抽出する非常に簡単な方法を提供します。この記事では、Java での JSoup の使用方法を紹介します。

  1. JSoup のインポート

まず、JSoup ライブラリを Java プロジェクトにインポートする必要があります。 JSoup は Maven 中央リポジトリで見つけてダウンロードできます。ダウンロードが完了したら、JSoup.jar ファイルを解凍し、Java プロジェクトにインポートします。

  1. JSoup の Document オブジェクトの作成

Java コードで、HTML ドキュメントを読み取り、解析するための Document オブジェクトを作成します。 JSoup ライブラリの connect() メソッドを使用して、解析する URL パスを指定すると、JSoup は自動的に HTML ドキュメントをダウンロードして解析し、Document オブジェクトを返します。例:

String url = "https://www.example.com";
Document doc = Jsoup.connect(url).get();
ログイン後にコピー
  1. HTML 要素の抽出

Document オブジェクトを使用すると、HTML ドキュメントから特定の HTML 要素を抽出できます。 Document オブジェクトの select() メソッドを使用し、CSS セレクター構文を渡すと、必要な要素をフィルターで除外できます。たとえば、次のようになります。

Element elementById = doc.select("#example-id").first();
Elements elementsByClass = doc.select(".example-class");
ログイン後にコピー

上記のコードは、それぞれ ID とクラス名を通じて対応する要素を取得します。 . .タグ名、属性値、属性名などの他のセレクターを使用することもできます。

  1. HTML 要素の操作

HTML ドキュメントから対応する要素を取得したら、これらの要素をさらに操作できます。 Element オブジェクトの text() メソッドを使用して、要素のテキスト コンテンツを取得できます。例:

String textById = elementById.text();
String textByClass = elementsByClass.text();
ログイン後にコピー

また、Element オブジェクトのattributes() メソッドを使用して属性値を取得することもできます。要素の。

Element element = doc.select("a").first();
String href = element.attributes().get("href");
ログイン後にコピー
  1. HTML フォームの処理

HTML 要素の取得に加えて、JSoup は HTML フォームを処理するための便利なツールも提供します。 select()、attr()、text() メソッドなどの Document オブジェクトのメソッドを使用して、フォーム要素の値を変更できます。

Document doc = Jsoup.parse("<form action='/my-url' method='post'>"
        + "<input type='text' name='username'/>"
        + "<input type='password' name='password'/>"
        + "<input type='submit' value='Login'/>"
        + "</form>");

Element formElement = doc.select("form").first();
formElement.attr("action", "login.jsp");
formElement.select("[name=username]").attr("value", "myUsername");
formElement.select("[name=password]").attr("value", "myPassword");
ログイン後にコピー
  1. エラー処理

JSoup を使用して HTML ドキュメントを解析すると、例外が発生することがあります。したがって、Java コードでは、JSoup によってスローされた IOException 例外と ParseException 例外を処理する必要があります。これらの例外は Try-catch ブロックを使用してキャッチできます。

try {
    Document doc = Jsoup.connect("http://example.com").get();
} catch (IOException e) {
    e.printStackTrace();
} catch (ParseException e) {
    e.printStackTrace();
}
ログイン後にコピー

概要

以上はJSoup関数を使ってHTMLを解析する方法です。 JSoup を使用すると、Java で HTML ドキュメントを簡単に取得して操作できます。 Java プロジェクトに JSoup ライブラリを組み込み、JSoup の Document オブジェクト、セレクター、および要素を操作する API を正しく使用することで、データのフェッチや HTML フォームの変更などのタスクを簡単に完了できます。

以上がJavaでHTML解析にJSoup関数を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート