HTML を JSON に変換する方法

Sheetize HtmlConverter for .NET を使えば、HTML ファイルを解析し、スプレッドシート データを構造化された JSON 表現として出力できます。コンバータはインラインスタイル、埋め込み画像、複雑なテーブルを処理し、Web API やデータパイプライン、フロントエンド アプリケーションで利用できるクリーンな JSON を生成します。

なぜ HTML → JSON に変換するのか?

  • JSON は言語に依存せず、タブular データを HTTP 経由で送信するのに最適です。
  • HTML ベースのレポートをダッシュボード、機械学習モデル、モバイルアプリのデータソースとして再利用できます。
  • 元のビジュアルレイアウトは HTML に残しつつ、セルの値・数式・メタデータをプログラムから取得できる形で公開できます。

コア機能

  • テーブル全体の抽出 – 行・列・結合セル・スタイルをすべて取得。
  • アセット処理 – 画像やメディアを Base64 エンコードするか、JSON で参照する別ファイルとして保存。
  • 出力のカスタマイズ – コンパクトなフラット構造か、階層型ブックモデルかを選択可能。

変換ワークフロー (HTML → JSON)

  1. コンバータを作成HtmlConverter のインスタンスを生成。
  2. ロードオプションを設定 – 変換元 HTML ファイルを指定し、必要に応じてリンクリソースのベース URI を設定。
  3. 保存オプションを構成HtmlSaveOptions を使って JSON スキーマ、リソース埋め込み、出力パスを選択。
  4. プロセスを実行HtmlConverter.Process(loadOptions, saveOptions) を呼び出す。

コード例 – 画像埋め込み付き HTML → JSON

using Sheetize;

var loadOptions = new LoadOptions
{
    InputFile = @"C:\Docs\Report.html"
};

var saveOptions = new HtmlSaveOptions
{
    OutputFile = @"C:\Output\Report.json"
};

HtmlConverter.Process(loadOptions, saveOptions);

JSON の出力イメージ(簡易版)

{
  "sheets": [{
    "name": "Sheet1",
    "rows": [{
      "cells": [{
        "address": "A1",
        "value": "Title",
        "style": { "fontWeight": "bold" }
      }, {
        "address": "B1",
        "value": "Image",
        "image": "data:image/png;base64,iVBORw0KG..."
      }]
    }]
  }]
}

上級テクニック

  • 抽出対象の選択HtmlLoadOptions.IncludeElements = new[] { "table", "img" } と設定すれば、関係のないマークアップは無視できます。
  • パフォーマンス – 大容量 HTML の場合は JsonSaveOptionsParallelProcessing = true を有効にして並列処理を行いましょう。
  • カスタムシリアライズIJsonConverter を実装してセル値(例:日付を ISO‑8601 に変換)を独自に変換できます。

拡張フォーマット対応

JSON だけでなく、同じ HtmlConverterMHTML、CSV、EPUB、AZW3、さらには XLSX への変換も可能です。これにより、Web、電子書籍、スプレッドシート間のデータ交換を包括的にサポートします。

上記の手順に従えば、Sheetize の HtmlConverter を使って任意の HTML レポートを簡単にクリーンな JSON に変換し、さまざまなシステムで活用できます。

 日本語