Как конвертировать HTML в JSON
Sheetize HtmlConverter для .NET упрощает парсинг HTML‑файла и генерацию структурированного JSON‑представления табличных данных, содержащихся в нём. Конвертер обрабатывает встроенные стили, изображения и сложные таблицы, генерируя чистый JSON, который можно использовать в веб‑API, конвейерах данных или фронтенд‑приложениях.
Почему стоит конвертировать HTML → JSON?
- JSON независим от языка программирования и идеально подходит для передачи табличных данных по HTTP.
- Позволяет переиспользовать HTML‑отчёты в качестве источников данных для дашбордов, моделей машинного обучения или мобильных приложений.
- Сохраняет оригинальную визуальную разметку в HTML, одновременно раскрывая значения ячеек, формулы и метаданные в программном виде.
Основные возможности
- Полный извлечения таблиц – строки, столбцы, объединённые ячейки и стили сохраняются.
- Работа с ресурсами – изображения и медиа могут быть закодированы в base64 или сохранены отдельными файлами со ссылками в JSON.
- Настраиваемый вывод – выбор между компактной плоской структурой и иерархической моделью книги.
Процесс конвертации (HTML → JSON)
- Создайте конвертер – создайте экземпляр
HtmlConverter. - Задайте параметры загрузки – укажите путь к исходному HTML‑файлу и, при необходимости, базовый URI для связанных ресурсов.
- Настройте параметры сохранения – используйте
HtmlSaveOptionsдля выбора схемы JSON, внедрения ресурсов и указания пути вывода. - Запустите процесс – вызовите
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‑файлов включите
ParallelProcessing = trueвJsonSaveOptions. - Пользовательская сериализация – реализуйте
IJsonConverter, чтобы преобразовывать значения ячеек (например, даты в формат ISO‑8601).
Поддерживаемые форматы
Помимо JSON, тот же HtmlConverter может генерировать MHTML, CSV, EPUB, AZW3, а также обратно в XLSX. Это делает его универсальным мостом для обмена данными между веб‑, электронными книгами и табличными экосистемами.
Следуя этим шагам, вы сможете надёжно превратить любой HTML‑отчёт в чистый, пригодный к использованию JSON с помощью Sheetize HtmlConverter.