วิธีแปลง HTML เป็น JSON
Sheetize HtmlConverter สำหรับ .NET ทำให้การแยกไฟล์ HTML และสร้างการแสดงผล JSON ที่เป็นโครงสร้างของข้อมูลสเปรดชีตเป็นเรื่องง่าย ตัวแปลงจะจัดการกับสไตล์ในบรรทัด, ภาพที่ฝังอยู่, และตารางที่ซับซ้อน ส่งออก JSON ที่สะอาด สามารถนำไปใช้ใน Web API, กระบวนการข้อมูล, หรือแอปพลิเคชันฝั่งหน้าได้
ทำไมต้องแปลง HTML → JSON?
- JSON เป็นภาษากลางที่ไม่ขึ้นกับภาษาและเหมาะสำหรับการส่งผ่านข้อมูลตารางผ่าน HTTP
- ช่วยให้คุณนำรายงานที่สร้างด้วย HTML ไปใช้เป็นแหล่งข้อมูลสำหรับแดชบอร์ด, โมเดลแมชชีนเลิร์นนิง, หรือแอปบนมือถือ
- รักษาเลย์เอาต์แบบภาพของ HTML ไว้ ในขณะเดียวกันเปิดเผยค่าของเซลล์, สูตร, และเมตาดาต้าในรูปแบบที่โปรแกรมสามารถอ่านได้
ชุดฟีเจอร์หลัก
- การสกัดตารางเต็มรูปแบบ – แถว, คอลัมน์, เซลล์ผสาน, และสไตล์ทั้งหมดจะถูกรวบรวม
- การจัดการทรัพยากร – ภาพและสื่ออื่น ๆ จะถูกเข้ารหัสเป็น base64 หรือเก็บเป็นไฟล์แยกที่อ้างอิงใน JSON
- การกำหนดรูปแบบผลลัพธ์ – เลือกโครงสร้างแบนแบบกะทัดรัดหรือโมเดลสมุดงานแบบลำดับชั้นได้ตามต้องการ
ขั้นตอนการแปลง (HTML → JSON)
- สร้าง Converter – ทำการสร้างอินสแตนซ์
HtmlConverter - ตั้งค่า Load Options – ระบุไฟล์ HTML ต้นฉบับและกำหนด base URI สำหรับทรัพยากรที่ลิงก์ไว้ (ถ้ามี)
- กำหนด Save Options – ใช้
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 ที่ได้ (แบบ simplified)
{
"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" }เพื่อละเว้น markup ที่ไม่เกี่ยวข้อง - ประสิทธิภาพ – สำหรับไฟล์ HTML ขนาดใหญ่ ให้เปิด
ParallelProcessing = trueในJsonSaveOptions - การแปลงแบบกำหนดเอง – สร้างคลาสที่ implements
IJsonConverterเพื่อแปลงค่าของเซลล์ (เช่น แปลงวันที่เป็นรูปแบบ ISO‑8601)
การสนับสนุนรูปแบบไฟล์เพิ่มเติม
นอกจาก JSON แล้ว HtmlConverter ยังสามารถส่งออกเป็น MHTML, CSV, EPUB, AZW3 และแม้กระทั่งกลับเป็น XLSX อีกด้วย ทำให้มันเป็นสะพานเชื่อมที่อเนกประสงค์สำหรับการแลกเปลี่ยนข้อมูลระหว่างเว็บ, e‑book, และระบบสเปรดชีต
ด้วยขั้นตอนเหล่านี้ คุณสามารถแปลงรายงาน HTML ใด ๆ ให้กลายเป็น JSON ที่สะอาดและพร้อมใช้งานโดยใช้ Sheetize HtmlConverter ได้อย่างมั่นใจ