Chuyển đổi HTML sang JSON
Việc chuyển đổi mã nguồn HTML thành dữ liệu JSON giúp biến các tài liệu web dễ đọc thành các cặp khóa-giá trị có cấu trúc để xử lý bằng chương trình và đưa vào API.
So sánh định dạng & Thông số kỹ thuật
| Thông số kỹ thuật | HTML | JSON |
|---|---|---|
| Loại MIME | text/ | application/ |
| Loại | đánh dấu siêu văn bản | đối tượng dữ liệu có cấu trúc |
| Nén | không có | không có (luồng văn bản) |
| Thông số tiêu chuẩn | Tiêu chuẩn động HTML của W3C / WHATWG | IETF RFC 8259 / ECMA-404 |
| Chữ ký byte đầu tệp | 3C 21 44 4F 43 54 59 50 45 (<!DOCTYPE) or 3C 68 74 6D 6C (<html) | 7B (\{) or 5B (\[) JSON root delimiter |
Tổng quan định dạng & Ứng dụng
Các nhà phát triển web và nhà khoa học dữ liệu thường xuyên chuyển đổi các tệp mã nguồn HTML thành dữ liệu JSON để trích xuất và phân tích nội dung từ các trang web. HTML sử dụng các thẻ lồng nhau như div và span để định dạng văn bản và hình ảnh cho cửa sổ trình duyệt. JSON sử dụng các đối tượng và mảng để tổ chức thông tin gọn gàng cho các ứng dụng phần mềm. Khi xây dựng trình thu thập dữ liệu web, công cụ tự động hóa hoặc đường ống dữ liệu, HTML thô sẽ được phân tích cú pháp và ánh xạ thành các đối tượng JSON. Sự thay đổi cấu trúc này cho phép các cơ sở dữ liệu và API phụ trợ truy vấn, lưu trữ và thao tác nội dung web hiệu quả mà không cần xử lý các quy tắc tạo kiểu trực quan hoặc thẻ bố cục. Các ứng dụng phần mềm từ trình duyệt không đầu đến trình trích xuất dữ liệu tùy chỉnh đều dựa vào phép biến đổi này. Ví dụ, một công cụ giám sát giá thương mại điện tử đọc một trang sản phẩm HTML, tách biệt các chuỗi giá và tiêu đề, rồi đóng gói chúng thành một gói tải trọng JSON sạch. Gói tải trọng này sau đó được gửi qua mạng HTTP đến một máy chủ trung tâm. Việc chuyển đổi HTML sang JSON loại bỏ chi phí đánh dấu không cần thiết, chỉ để lại các điểm dữ liệu thô cần thiết cho các hệ thống phần mềm hiện đại.
Thông số kỹ thuật & Phân tích codec
Tài liệu HTML dùng loại MIME text/html, còn dữ liệu JSON dùng application/json. HTML biểu diễn nội dung đánh dấu có cấu trúc, trong khi JSON biểu diễn đối tượng, mảng và giá trị. Cả hai định dạng đều không bắt buộc phải nén. Quá trình chuyển đổi phân tích HTML rồi ánh xạ nội dung được chọn vào các trường JSON; kết quả phụ thuộc vào cấu trúc trang và quy tắc trích xuất.
Khả năng tương thích hệ điều hành & trình duyệt
HTML và JSON được hỗ trợ rộng rãi trên hầu hết hệ điều hành hiện đại như Windows, macOS, Linux, iOS và Android. Trình duyệt web kết xuất tài liệu HTML để hiển thị nội dung; môi trường chạy JavaScript trong trình duyệt và trên máy chủ như Node.js phân tích cú pháp JSON bằng phương thức JSON.parse tích hợp. Công cụ dòng lệnh như jq xử lý luồng JSON hiệu quả, còn trình soạn thảo văn bản tiêu chuẩn mở cả hai định dạng mà không cần plugin chuyên dụng.
Thông tin hữu ích
Luôn làm sạch văn bản HTML đã trích xuất trước khi xuất ra JSON để loại bỏ khoảng trắng không mong muốn, dấu ngắt dòng và các thực thể ký tự lạc lõng có thể làm hỏng trình phân tích cú pháp ứng dụng đích của bạn.
Câu hỏi thường gặp
Làm cách nào để chuyển đổi Mã nguồn HTML sang Dữ liệu JSON mà không làm giảm chất lượng?
Việc chuyển đổi từ HTML sang JSON không mất dữ liệu đối với nội dung văn bản và thuộc tính, miễn là nội dung văn bản và các thuộc tính phần tử được phân tích cú pháp chính xác. Do cả hai định dạng đều là luồng văn bản chưa nén, việc loại bỏ các thẻ đánh dấu trực quan không làm giảm chất lượng dữ liệu văn bản cơ bản.
Sự khác biệt giữa Mã nguồn HTML và Dữ liệu JSON là gì?
Mã nguồn HTML là một ngôn ngữ đánh dấu được xây dựng bằng các thẻ được thiết kế để kết xuất các trang web trong trình duyệt. Dữ liệu JSON là định dạng trao đổi dữ liệu nhẹ được xây dựng bằng các cặp khóa-giá trị và mảng được thiết kế để lưu trữ và truyền thông tin có cấu trúc giữa các hệ thống.