Hướng dẫn read file xml python
1. XML (Extensible Markup Language) là gì?XML (Extensible Markup Language) gọi là ngôn ngữ đánh dấu mở rộng. XML thường được sử dụng để tổ chức, lưu trữ, truyền gửi dữ liệu giữa các hệ thống khác nhau. XML được xây dựng dựa trên một tập hợp các quy tắt để mã hóa dữ liệu thành một document với định dạng cụ thể. Giả sử, chúng ta có 1 file items.xml có nội dung như bên dưới: Show
File items.xml đơn giản gồm các thẻ (tag) lồng nhau. Trong đó, mỗi thẻ item có thuộc tính name và price. Chúng ta sẽ sử dụng file items.xml cho các ví dụ đọc file XML trong bài này. Việc đọc và phân tích file XML thường được gọi là phân tích cú pháp (parsing). Trong Python, chúng ta có thể parsing file XML bằng cách thư viện:
2. Đọc (read) file XML với BeautifulSoupThư viện BeautifulSoup hỗ trợ HTML parser (lxml) giúp đọc file xml. Để sử dụng lxml parser, chúng ta cần cài đặt thư viện này với câu lệnh sau:
Các bạn có thể đọc lại bài Cài đặt Python và môi trường lập trình với Visual Studio Code để biết cách cài đặt các thư viện Python trong Visual Studio Code. Để đọc file xml với lxml, chúng ta thực hiện 2 bước: 1) Tìm các thẻ (tag) trong xml, 2) Rút trích dữ liệu từ các thẻ (tag).
Kết quả
Các hàm của BeautifulSoup thường được sử dụng để đọc file XML như:
Các bạn có thể tìm hiểu thêm cách sử dụng BeautifulSoup tại Beautiful Soup Documentation. 3. Đọc (read) file XML với ElementTreeModule ElementTree cung cấp rất nhiều công cụ để thao tác với file XML. Module ElementTree được xây dựng sẵn trong Python nên chúng ta không cần cài đặt bất kỳ thư viện nào thêm để sử dụng ElementTree. Tổ chức lữu trữ dữ liệu của file XML là một định dạng dữ liệu phân cấp nên việc biểu diễn nó bằng cây sẽ dễ dàng hơn rất nhiều. Module ElementTree cung cấp các phương thức để biểu diễn toàn bộ tài liệu XML dưới dạng một cây duy nhất. Việc này rất phù hợp trong thao tác với file XML. Module ElementTree cung cấp hàm
Kết quả
Các bạn có thể tìm hiểu thêm cách sử dụng ElementTree tại The ElementTree XML API. 4. Đọc (read) file XML với minidomModule minidom được tích hợp sẵn trong Python. Chúng ta chỉ cần
Kết quả
Các bạn có thể tìm hiểu thêm cách sử dụng minidom tại Minimal DOM implementation.
|