ウェブサイトから画像を抽出する方法

HTMLから画像を抽出する機能は、Webスクレイピングやコンテンツ分析などのさまざまなアプリケーションにとって重要です。 Aspose.HTML for Java は、HTMLドキュメントをシームレスにナビゲートして情報を収集する一連のツールを開発者に提供することで、このプロセスを簡素化する堅牢なライブラリです。HTMLドキュメントから画像を抽出する方法を探ってみましょう。


Javaを使ってHTMLから画像を抽出する

Aspose.HTML for Javaライブラリを使用すると、HTMLドキュメントから情報を解析および抽出するための堅牢なツールセットをAPIで提供するため、独自のアプリケーションを簡単に作成できます。製品でHTMLデータの解析機能を使用したい場合、またはプログラムでHTMLからデータを抽出したい場合は、以下のコード例を参照してください。


ウェブサイトから画像を抽出するJavaコード

// Open a document you want to download images from
final HTMLDocument document = new HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-shapes/");

// Collect all <img> elements
HTMLCollection images = document.getElementsByTagName("img");

// Create a distinct collection of relative image URLs
Iterator<Element> iterator = images.iterator();
java.util.Set<String> urls = new HashSet<>();
for (Element e : images) {
    urls.add(e.getAttribute("src"));
}

// Create absolute image URLs
java.util.List<Url> absUrls = urls.stream()
    .map(src -> new Url(src, document.getBaseURI()))
    .collect(Collectors.toList());

for (Url url : absUrls) {
    // Create an image request message
    final RequestMessage request = new RequestMessage(url);

    // Extract image
    final ResponseMessage response = document.getContext().getNetwork().send(request);

    // Check whether a response is successful
    if (response.isSuccess()) {
        String[] split = url.getPathname().split("/");
        String path = split[split.length - 1];

        // Save file to a local file system
        FileHelper.writeAllBytes(path, response.getContent().readAsByteArray());
    }
}



ウェブサイトから画像を抽出する手順

  1. HTMLDocument(Url) コンストラクタを使用して HTML ドキュメントを初期化する。
  2. getElementsByTagName("img") メソッドを使用して、ドキュメントからすべての <img> 要素を収集する。このメソッドは、ウェブページに存在する <img> 要素のコレクションを返す。
  3. <img> 要素を繰り返し処理し、 getAttribute("src") メソッドを使用して各 <img> 要素の src 属性を抽出します。
  4. Url クラスと HTMLDocument クラスの BaseURI プロパティを使用して、絶対画像 URL を作成する。
  5. それぞれの絶対画像 URL に対して、 RequestMessage(url) コンストラクタを使用してリクエストを作成し、送信します。レスポンスが成功したかどうかをチェックする。
  6. レスポンスが成功した場合は、画像データを抽出し、FileHelper.writeAllBytes() を使用してローカルのファイルシステムに保存します。

Aspose.HTML for Javaを使用すると、HTMLページを解析して画像ソースを特定し、それらの画像をダウンロードするツールを簡単に作成できます。これは、分析、アーカイブ、コンテンツ作成のために画像を収集する必要がある人にとって、手動で行う手間を省く強力なソリューションです。Javaを使ってプログラムからウェブサイトからさまざまな種類の画像を抽出する方法については、ドキュメント記事 Extract Images From Website in Java を参照してください。

注意: 保存された画像を商業的に使用する前に、著作権法を遵守し、適切な許可またはライセンスを取得することが不可欠です。私たちは、他人のファイルを本人の同意なしに営利目的で抽出・使用することを支持しません。




Java HTML パーサー ライブラリを使ってみる

HTML API は、高度な Web スクレイピングおよび HTML 解析ライブラリです。ノードを作成、編集、ナビゲートし、データを抽出し、HTML、XHTML、および MHTML ファイルを PDF、画像、およびその他の形式に変換できます。さらに、CSS、HTML Canvas、SVG、XPath、および JavaScript をすぐに使用して、操作タスクを拡張することもできます。これはスタンドアロン API であり、ソフトウェアのインストールは必要ありません。

Aspose Maven リポジトリ から最新バージョンを直接ダウンロードし、次の設定を pom.xml に追加することで、Maven ベースのプロジェクト内にインストールできます。


リポジトリ

<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>

依存

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html</artifactId>
<version>version of aspose-html API</version>
<classifier>jdk17</classifier>
</dependency>

その他のサポート機能

Aspose.HTML for Javaライブラリを使用して、HTMLベースのドキュメントを解析し、操作します。明快、安全、シンプル!