インターネット情報の爆発的な増加に伴い、Web ページから関連データを取得する必要があるアプリケーションがますます増えています。 JSoup は、Web ページからデータを簡単に抽出して操作できる Java HTML パーサーです。 Java API 開発では、JSoup は重要で一般的に使用されるツールです。この記事では、WebスクレイピングにJSoupを使用する方法を紹介します。
1. JSoup の概要と基本的な使用法
1. JSoup の概要
JSoup は Java HTML パーサーであり、開発者は Maven を介してプロジェクトに導入できます。次の依存関係:
<dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.14.2</version> </dependency>
2. 基本的な使用法
JSoup を使用するには、まず HTML ページのコンテンツを Document
オブジェクトに解析する必要があり、その後、このオブジェクトを使用できます。ページ内のさまざまな要素を取得します。 JSoup の基本的な使用例を以下に示します:
String url = "https://www.baidu.com/"; Document document = Jsoup.connect(url).get(); // 通过 URL 加载页面 // 获取页面标题 String title = document.title(); // 获取页面所有超链接 Elements links = document.select("a[href]"); // 循环遍历页面中的所有链接 for(Element link: links){ String linkHref = link.attr("href"); String linkText = link.text(); }
2. JSoup を Web クローリングに使用する
1. URL からページ情報を取得する
JSoup の使用方法 connect (url).get()
以下に示すように、指定された URL アドレスを通じてページ情報を取得できます:
String url = "https://www.baidu.com/"; Document document = Jsoup.connect(url).get();
2. HTML 要素を解析します
の構造に従ってページでは select()
メソッドを使用すると、必要な要素をすばやく取得できます。以下は、JSoup を使用してすべてのリンクを取得する例です。
Elements links = document.select("a[href]"); for(Element link: links){ String linkHref = link.attr("href"); String linkText = link.text(); System.out.println(linkHref + " , " + linkText); }
セレクター構文を使用すると、指定された条件を満たすページ内の要素を取得できます。たとえば、クラス「s_ipt」のすべての入力要素を取得するには、次のコードを使用します。
Elements inputs = document.select("input[class=s_ipt]");
サポートされるセレクター構文には、ラベル セレクター、クラス セレクター、ID セレクター、属性セレクター、および組み合わせ選択セレクター、擬似セレクターなど
4. イベント処理
JSoup はページ上のイベントを簡単に処理できます。たとえば、次のコードを使用して、必要な入力要素を取得し、それにイベント リスナーをバインドできます:
Element input = document.select("input[type=text").first(); input.attr("oninput", "console.log('input value has changed')");
5. フォームの送信
JSoup もフォームの送信に役立ちます。たとえば、次のコードを使用して、Baidu 検索ボックスへの送信を完了できます:
String url = "https://www.baidu.com/s"; String keyword = "Java"; Document document = Jsoup.connect(url) .data("wd", keyword) .post();
3. まとめ
この記事では、Web クローリングに JSoup を使用する方法と基本的な使用法を紹介します。ジェイスープの。 JSoup を使用すると、ページ要素、フィルター、イベント ハンドル、フォームの送信などを簡単に取得できます。もちろん、JSoupを使用する場合は、関連する法律、規制、倫理の遵守に注意する必要があり、違法かつ懲戒的な方法で他人の情報を取得することはできません。
以上がJava API開発におけるWebスクレイピングにJSoupを使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。