Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

Tôi đã tự hỏi nếu trong một tệp XML, tôi có thể khởi chạy tệp Python và dựa trên những gì Python trả về chạy các phần khác nhau của mã XML.

Cái gì đó như

Trong tệp XML:

  • Chạy tệp Python
  • Nếu tệp trả lại A, hãy chạy mã A của tệp XML này
  • khác chạy mã B của tệp XML này

thanks!

Hỏi ngày 27 tháng 9 năm 2014 lúc 16:33Sep 27, 2014 at 16:33

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

1

Tệp XML không thể chạy tập lệnh Python vì XML là ngôn ngữ mô tả được sử dụng để biểu diễn dữ liệu.

Tuy nhiên, bạn có thể làm điều ngược lại, nghĩa là sử dụng Python để đọc tệp XML và làm điều gì đó.

Nhân tiện, khi bạn nói "Chạy mã A của tệp XML này", tôi không chắc bạn đang làm đúng, vì XML không được phép chứa "mã hoạt động".

Đã trả lời ngày 27 tháng 9 năm 2014 lúc 16:53Sep 27, 2014 at 16:53

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

ibi0tuxibi0tuxibi0tux

2.4074 Huy hiệu vàng26 Huy hiệu bạc44 Huy hiệu đồng4 gold badges26 silver badges44 bronze badges

2

XML là gì?

XML là viết tắt của ngôn ngữ đánh dấu mở rộng. Nó được thiết kế để lưu trữ và vận chuyển một lượng dữ liệu nhỏ đến trung bình và được sử dụng rộng rãi để chia sẻ thông tin có cấu trúc.

Python cho phép bạn phân tích và sửa đổi các tài liệu XML. Để phân tích tài liệu XML, bạn cần có toàn bộ tài liệu XML trong bộ nhớ. Trong hướng dẫn này, chúng ta sẽ xem cách chúng ta có thể sử dụng lớp XML Minidom trong Python để tải và phân tích các tệp XML.

Cách phân tích XML bằng Minidom

Chúng tôi đã tạo một tệp XML mẫu mà chúng tôi sẽ phân tích.

Bước 1) Tạo tệp XML mẫu

Bên trong tập tin, chúng ta có thể thấy tên, họ, nhà và lĩnh vực chuyên môn (SQL, Python, thử nghiệm và kinh doanh)

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

Bước 2) Sử dụng hàm phân tích cú pháp để tải và phân tích tệp XML

Khi chúng tôi đã phân tích cú pháp tài liệu, chúng tôi sẽ in ra tên nút của tên gốc của gốc của tài liệu và tên đầu tiên của trò chơi. TagName và Nodename là các thuộc tính tiêu chuẩn của tệp XML.“node name” of the root of the document and the “firstchild tagname”. Tagname and nodename are the standard properties of the XML file.

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

  • Nhập mô -đun xml.dom.minidom và tệp khai báo phải được phân tích cú pháp (myxml.xml)
  • Tệp này mang một số thông tin cơ bản về một nhân viên như tên, họ, nhà, chuyên môn, v.v.
  • Chúng tôi sử dụng chức năng phân tích cú pháp trên XML Minidom để tải và phân tích tệp XML
  • Chúng tôi có Biến DOC và DOC nhận được kết quả của chức năng phân tích cú pháp
  • Chúng tôi muốn in tên gật đầu và tên con từ tệp, vì vậy chúng tôi khai báo nó trong hàm in
  • Chạy mã- nó in ra tên gật đầu (#Document) từ tệp XML và tên con cái đầu tiên (nhân viên) từ tệp XML

Ghi chú::

Tên gật đầu và tên con là tên hoặc thuộc tính tiêu chuẩn của XML DOM.

Bước 3) Gọi danh sách các thẻ XML từ tài liệu XML và được in ra

Tiếp theo, chúng tôi cũng có thể gọi danh sách các thẻ XML từ tài liệu XML và được in ra. Ở đây chúng tôi đã in ra tập hợp các kỹ năng như SQL, Python, thử nghiệm và kinh doanh.

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

  • Tuyên bố chuyên môn biến đổi, từ đó chúng tôi sẽ trích xuất tất cả các nhân viên tên chuyên môn đang có
  • Sử dụng chức năng tiêu chuẩn DOM có tên là GetElementsByByTaGname ”
  • Điều này sẽ nhận được tất cả các yếu tố có tên là kỹ năng
  • Khai báo vòng lặp trên từng thẻ kỹ năng
  • Chạy mã- nó sẽ đưa ra danh sách bốn kỹ năng

Chúng ta có thể tạo một thuộc tính mới bằng cách sử dụng chức năng created createdEement và sau đó nối phần thuộc tính hoặc thẻ mới này vào các thẻ XML hiện có. Chúng tôi đã thêm một thẻ mới, Bigdata, trong tệp XML của chúng tôi.

  1. Bạn phải mã để thêm thuộc tính mới (BigData) vào thẻ XML hiện có
  2. Sau đó, bạn phải in thẻ XML bằng các thuộc tính mới được thêm vào thẻ XML hiện có

Hướng dẫn how do i run a python script in xml? - làm cách nào để chạy tập lệnh python trong xml?

  • Để thêm một XML mới và thêm nó vào tài liệu, chúng tôi sử dụng mã là Doc.Create Elements
  • Mã này sẽ tạo một thẻ kỹ năng mới cho thuộc tính mới của chúng tôi
  • Thêm thẻ kỹ năng này vào tài liệu đầu tiên (nhân viên)
  • Chạy mã- Thẻ mới Dữ liệu lớn "sẽ xuất hiện với danh sách chuyên môn khác

Ví dụ trình phân tích cú pháp XML

Ví dụ Python 2

import xml.dom.minidom

def main():
# use the parse() function to load and parse an XML file
   doc = xml.dom.minidom.parse("Myxml.xml");
  
# print out the document node and the name of the first child tag
   print doc.nodeName
   print doc.firstChild.tagName
  
# get a list of XML tags from the document and print each one
   expertise = doc.getElementsByTagName("expertise")
   print "%d expertise:" % expertise.length
   for skill in expertise:
     print skill.getAttribute("name")
    
#Write a new XML tag and add it into the document
   newexpertise = doc.createElement("expertise")
   newexpertise.setAttribute("name", "BigData")
   doc.firstChild.appendChild(newexpertise)
   print " "

   expertise = doc.getElementsByTagName("expertise")
   print "%d expertise:" % expertise.length
   for skill in expertise:
     print skill.getAttribute("name")
    
if name == "__main__":
  main();

Ví dụ Python 3

import xml.dom.minidom

def main():
    # use the parse() function to load and parse an XML file
    doc = xml.dom.minidom.parse("Myxml.xml");

    # print out the document node and the name of the first child tag
    print (doc.nodeName)
    print (doc.firstChild.tagName)
    # get a list of XML tags from the document and print each one
    expertise = doc.getElementsByTagName("expertise")
    print ("%d expertise:" % expertise.length)
    for skill in expertise:
        print (skill.getAttribute("name"))

    # Write a new XML tag and add it into the document
    newexpertise = doc.createElement("expertise")
    newexpertise.setAttribute("name", "BigData")
    doc.firstChild.appendChild(newexpertise)
    print (" ")

    expertise = doc.getElementsByTagName("expertise")
    print ("%d expertise:" % expertise.length)
    for skill in expertise:
        print (skill.getAttribute("name"))

if __name__ == "__main__":
    main();

Cách phân tích XML bằng cách sử dụng ElementTree

ElementTree là API để thao tác XML. ElementTree là cách dễ dàng để xử lý các tệp XML.

Chúng tôi đang sử dụng tài liệu XML sau làm dữ liệu mẫu:


   
      SQL
      Python
   

Đọc XML bằng ElementTree:

Trước tiên chúng ta phải nhập mô -đun xml.etree.elementtree.

import xml.etree.ElementTree as ET

Bây giờ, hãy để lấy phần tử gốc:

root = tree.getroot()

Sau đây là mã hoàn chỉnh để đọc dữ liệu XML trên

import xml.etree.ElementTree as ET
tree = ET.parse('items.xml')
root = tree.getroot()

# all items data
print('Expertise Data:')

for elem in root:
   for subelem in elem:
      print(subelem.text)

output:

Expertise Data:
SQL
Python

Summary:

Python cho phép bạn phân tích toàn bộ tài liệu XML tại một lần và không chỉ một dòng tại một thời điểm. Để phân tích tài liệu XML, bạn cần có toàn bộ tài liệu trong bộ nhớ.

  • Để phân tích tài liệu xml
  • Nhập XML.DOM.Minidom
  • Sử dụng chức năng parse parse để phân tích cú pháp tài liệu (doc = xml.dom.minidom.parse (tên tệp);
  • Gọi danh sách các thẻ XML từ tài liệu XML bằng mã (= doc.getElementsByTagName (tên của tên XML Tags,)
  • Để tạo và thêm thuộc tính mới trong tài liệu XML
  • Sử dụng chức năng “createdeLement”

XML có hoạt động với Python không?

Python cho phép phân tích các tài liệu XML này bằng hai mô -đun là mô -đun xml.etree.elementtree và minidom (triển khai DOM tối thiểu).Phân tích cú pháp có nghĩa là đọc thông tin từ một tệp và chia nó thành các phần bằng cách xác định các phần của tệp XML cụ thể đó. etree. ElementTree module and Minidom (Minimal DOM Implementation). Parsing means to read information from a file and split it into pieces by identifying parts of that particular XML file.

Xử lý Python XML là gì?

XML là ngôn ngữ nguồn mở di động, cho phép các lập trình viên phát triển các ứng dụng có thể được đọc bởi các ứng dụng khác, bất kể hệ điều hành và/hoặc ngôn ngữ phát triển.a portable, open source language that allows programmers to develop applications that can be read by other applications, regardless of operating system and/or developmental language.

Pandas có hoạt động với XML không?

Thư viện phân tích dữ liệu PANDAS cung cấp các chức năng để đọc/ghi dữ liệu cho hầu hết các loại tệp.Ví dụ: nó bao gồm read_csv () và to_csv () để tương tác với các tệp CSV.Tuy nhiên, Pandas không bao gồm bất kỳ phương pháp nào để đọc và ghi các tệp XML.Pandas does not include any methods to read and write XML files.