Chuyển đổi XML sang Excel gấu trúc Python

Ở đây, chúng ta sẽ chuyển đổi cấu trúc XML thành DataFrame bằng gói BeautifulSoup của Python. Nó là một thư viện python được sử dụng để cạo các trang web. Để cài đặt thư viện này, lệnh là

pip install beautifulsoup4

Chúng tôi sẽ trích xuất dữ liệu từ tệp XML bằng thư viện này và sau đó chúng tôi sẽ chuyển đổi dữ liệu được trích xuất thành Dataframe. Để chuyển đổi thành Dataframes, chúng ta cần cài đặt thư viện của gấu trúc.  

thư viện gấu trúc. Nó là một thư viện python được sử dụng để thao tác và phân tích dữ liệu. Để cài đặt thư viện này, lệnh là

pip install pandas

Ghi chú. Nếu nó yêu cầu bạn cài đặt thư viện trình phân tích cú pháp, hãy sử dụng lệnh

pip install et_xmlfile

Triển khai từng bước

Bước 1. Nhập thư viện

Python3




from bs4import BeautifulSoup  

import pandas as pd

Trước tiên, chúng ta cần nhập các thư viện sẽ sử dụng trong chương trình của mình. Ở đây, chúng tôi đã nhập thư viện BeautifulSoup từ mô-đun bs4 và cũng đã nhập thư viện gấu trúc và tạo bí danh của nó là 'pd'

Bước 2. Đọc tệp xml

Python3




pip install pandas
0
pip install pandas
1
pip install pandas
2
pip install pandas
3
pip install pandas
4
pip install pandas
5
pip install pandas
6
pip install pandas
7

pip install pandas
8
pip install pandas
1
pip install pandas
0
pip install et_xmlfile
1

Ở đây, chúng tôi đang mở tệp xml có tên 'gfg. xml' sử dụng hàm open("filename", "mode") trong chế độ đọc 'r' và lưu trữ nó trong biến 'file'. Sau đó, chúng tôi đang đọc nội dung thực tế được lưu trữ trong tệp bằng hàm read()

Bước 3

Python3




pip install et_xmlfile
2
pip install pandas
1
pip install et_xmlfile
4
pip install et_xmlfile
5
pip install pandas
7

Ở đây, chúng tôi đang cung cấp dữ liệu của tệp cần loại bỏ được lưu trữ trong biến 'nội dung' cho hàm BeautifulSoup và cũng chuyển loại tệp là XML

Bước 4. Tìm kiếm dữ liệu

Ở đây, chúng tôi đang trích xuất dữ liệu. Chúng tôi đang sử dụng hàm find_all() trả về dữ liệu được trích xuất có trong thẻ được truyền trong hàm này

Python3




pip install et_xmlfile
7
pip install pandas
1
pip install et_xmlfile
9
authors = soup.find_all('author')
0
pip install pandas
7

authors = soup.find_all('author')
2_______1_______1
pip install et_xmlfile
9
authors = soup.find_all('author')
5
pip install pandas
7

authors = soup.find_all('author')
7_______1_______1
pip install et_xmlfile
9from0
pip install pandas
7

from2_______1_______1

pip install et_xmlfile
9from5_______1_______7

from7_______1_______1

pip install et_xmlfile
9bs40
pip install pandas
7

bs42

pip install pandas
1
pip install et_xmlfile
9bs45
pip install pandas
7

Thí dụ

authors = soup.find_all('author')

Chúng tôi đang lưu trữ dữ liệu được trích xuất vào biến tác giả. Hàm find_all(‘author’) này sẽ trích xuất tất cả dữ liệu bên trong thẻ tác giả trong tệp xml. Dữ liệu sẽ được lưu trữ dưới dạng danh sách, tôi. e. tác giả là danh sách dữ liệu được trích xuất từ ​​​​tất cả các thẻ tác giả trong tệp xml đó. Tương tự với các câu lệnh khác

Bước 5. Nhận dữ liệu văn bản từ xml

Python3




bs47

pip install pandas
1 bs49

import0 import1import2 import3

pip install pandas
3import5
pip install pandas
5import7import8

import9BeautifulSoup  0

pip install pandas
1 BeautifulSoup  2

BeautifulSoup  3_______61_______4

BeautifulSoup  3_______61_______6

import9BeautifulSoup  8

Bây giờ, chúng tôi có tất cả dữ liệu được trích xuất từ ​​​​tệp xml trong các danh sách khác nhau theo thẻ. Bây giờ chúng ta cần kết hợp tất cả dữ liệu liên quan đến một cuốn sách từ các danh sách khác nhau. Vì vậy, chúng tôi chạy một vòng lặp for trong đó tất cả dữ liệu của một cuốn sách cụ thể từ các danh sách khác nhau được lưu trữ trong một danh sách có tên 'hàng' và sau đó mỗi hàng như vậy được thêm vào một danh sách khác có tên 'dữ liệu'

Bước 6. In khung dữ liệu

Cuối cùng, chúng tôi có một dữ liệu kết hợp riêng biệt cho mỗi cuốn sách. Bây giờ chúng tôi cần chuyển đổi dữ liệu danh sách này thành DataFrame

Python3




BeautifulSoup  9

pip install pandas
1 import1_______1_______1 import3import4
pip install pandas
5import6_______1_______5

import8import9

pip install pandas
5pandas as pd1
pip install pandas
5pandas as pd3
pip install pandas
5

import8pandas as pd6pandas as pd7

pip install pandas
1 pandas as pd9
pip install pandas
7

pip install pandas
01

đầu ra

Chuyển đổi XML sang Excel gấu trúc Python

Khung dữ liệu

Ở đây, chúng tôi đang chuyển đổi danh sách dữ liệu đó thành Dataframe bằng pd. Lệnh DataFrame(). Trong lệnh này, chúng tôi chuyển danh sách 'dữ liệu' và cũng chuyển tên của các cột mà chúng tôi muốn có. Chúng tôi cũng đã đề cập đến kiểu dữ liệu (dtype) là float sẽ làm cho tất cả các giá trị số nổi

Bây giờ chúng tôi đã trích xuất dữ liệu từ tệp XML bằng BeautifulSoup vào DataFrame và nó được lưu dưới dạng 'df'. Để xem DataFrame, chúng tôi sử dụng câu lệnh in để in nó.  

Làm cách nào để chuyển đổi Dữ liệu XML sang Excel trong Python?

Tiếp theo, chuyển đổi tệp XML thành sổ làm việc Excel trong Python theo cách lập trình bằng cách thực hiện theo các bước dưới đây. .
Tạo một phiên bản của ConvertApi
Tạo một phiên bản của ConvertSettings
Đặt tên lưu trữ và đường dẫn tệp XML đầu vào
Tiếp theo, gán “xlsx” cho định dạng
Bây giờ, cung cấp đường dẫn tệp xlsx đầu ra

Làm cách nào để chuyển đổi XML sang DataFrame của gấu trúc?

Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo Pandas DataFrame từ XML lồng nhau. .
Phân tích cú pháp hoặc đọc tệp XML bằng ElementTree. .
Lặp lại qua nút gốc để lấy các thuộc tính nút con 'SL NO' (tại đây) và trích xuất các giá trị văn bản của từng thuộc tính (ở đây là mặt hàng thực phẩm, giá cả, số lượng và chiết khấu)

Làm cách nào để phân tích cú pháp tệp XML trong gấu trúc Python?

Chúng ta có thể trực tiếp sử dụng objectify. phân tích cú pháp () và cung cấp cho nó đường dẫn đến tệp XML . Để lấy phần tử gốc, chúng ta sẽ sử dụng getroot() trên dữ liệu XML được phân tích cú pháp. Bây giờ chúng ta có thể lặp qua các phần tử con của nút gốc và ghi chúng vào danh sách Python.

Có cách nào để chuyển đổi XML sang Excel không?

Nhập nhiều tệp dữ liệu XML dưới dạng dữ liệu ngoài .
Nếu bạn đang sử dụng Excel với đăng ký Microsoft 365, hãy bấm vào Dữ liệu > Nhận dữ liệu > Từ tệp > Từ XML. .
Chuyển đến ổ đĩa, thư mục hoặc vị trí Internet có tệp dữ liệu XML (. .
Chọn tệp và nhấp vào Mở
Trong hộp thoại Nhập dữ liệu, hãy thực hiện một trong các thao tác sau