Hướng dẫn tree getroot in python - cây bắt rễ trăn

Mới trong phiên bản 2.5.

Show

Mã nguồn: lib/xml/etree/ElementTree.py Lib/xml/etree/ElementTree.py


Loại

root = ET.fromstring(country_data_as_string)
3 là một đối tượng container linh hoạt, được thiết kế để lưu trữ các cấu trúc dữ liệu phân cấp trong bộ nhớ. Loại có thể được mô tả như là một sự giao thoa giữa một danh sách và một từ điển.

Mỗi phần tử có một số thuộc tính được liên kết với nó:

  • Một thẻ là một chuỗi xác định loại dữ liệu mà phần tử này biểu thị (loại phần tử, nói cách khác).

  • Một số thuộc tính, được lưu trữ trong từ điển Python.

  • một chuỗi văn bản.

  • một chuỗi đuôi tùy chọn.

  • một số yếu tố trẻ em, được lưu trữ theo trình tự Python

Để tạo một thể hiện phần tử, hãy sử dụng hàm tạo

root = ET.fromstring(country_data_as_string)
3 hoặc hàm nhà máy
root = ET.fromstring(country_data_as_string)
5.

Lớp

root = ET.fromstring(country_data_as_string)
6 có thể được sử dụng để bọc cấu trúc phần tử và chuyển đổi nó từ và sang XML.

Việc triển khai C của API này có sẵn là

root = ET.fromstring(country_data_as_string)
7.

Xem http://effbot.org/zone/element-index.htm để hướng dẫn và liên kết đến các tài liệu khác. Trang Fredrik Lundh, cũng là vị trí của phiên bản phát triển của xml.etree.elementtree.

Đã thay đổi trong phiên bản 2.7: API ElementTree được cập nhật lên 1.3. Để biết thêm thông tin, xem Giới thiệu ElementTree 1.3.The ElementTree API is updated to 1.3. For more information, see Introducing ElementTree 1.3.

19.7.1. Hướng dẫn¶Tutorial¶

Đây là một hướng dẫn ngắn để sử dụng

root = ET.fromstring(country_data_as_string)
8 (ngắn gọn ____29). Mục tiêu là để chứng minh một số khối xây dựng và các khái niệm cơ bản của mô -đun.

19.7.1.1. Cây XML và các yếu tốXML tree and elements¶

XML là một định dạng dữ liệu phân cấp vốn có và cách tự nhiên nhất để thể hiện nó là với một cây.

root = ET.fromstring(country_data_as_string)
9 có hai lớp cho mục đích này -
root = ET.fromstring(country_data_as_string)
6 đại diện cho toàn bộ tài liệu XML dưới dạng cây và
root = ET.fromstring(country_data_as_string)
3 đại diện cho một nút duy nhất trong cây này. Các tương tác với toàn bộ tài liệu (đọc và ghi vào/từ các tệp) thường được thực hiện ở cấp độ
root = ET.fromstring(country_data_as_string)
6. Các tương tác với một phần tử XML duy nhất và các phần tử phụ của nó được thực hiện ở cấp độ
root = ET.fromstring(country_data_as_string)
3.

19.7.1.2. Phân tích cú pháp xml¶Parsing XML¶

Chúng tôi sẽ sử dụng tài liệu XML sau làm dữ liệu mẫu cho phần này:



     name="Liechtenstein">
        1
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
        4
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
        68
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

Chúng tôi có một số cách để nhập dữ liệu. Đọc tệp từ đĩa:

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

Đọc dữ liệu từ một chuỗi:

root = ET.fromstring(country_data_as_string)

>>> root.tag
'data'
>>> root.attrib
{}
5 phân tích XML từ một chuỗi trực tiếp vào
root = ET.fromstring(country_data_as_string)
3, là phần tử gốc của cây phân tích cú pháp. Các chức năng phân tích cú pháp khác có thể tạo ra một
root = ET.fromstring(country_data_as_string)
6. Kiểm tra tài liệu để chắc chắn.

Là một

root = ET.fromstring(country_data_as_string)
3,
>>> root.tag
'data'
>>> root.attrib
{}
9 có thẻ và từ điển thuộc tính:

>>> root.tag
'data'
>>> root.attrib
{}

Nó cũng có các nút trẻ em mà chúng ta có thể lặp lại:

>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}

Trẻ em được lồng và chúng ta có thể truy cập các nút trẻ cụ thể bằng chỉ mục:

>>> root[0][1].text
'2008'

19.7.1.3. Tìm các yếu tố thú vịFinding interesting elements¶

root = ET.fromstring(country_data_as_string)
3 có một số phương pháp hữu ích giúp lặp lại đệ quy trên tất cả các cây con bên dưới nó (con cái, con cái của họ, v.v.). Ví dụ:
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
1:

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}

>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
2 chỉ tìm thấy các yếu tố có thẻ là trẻ em trực tiếp của yếu tố hiện tại.
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
3 Tìm đứa con đầu tiên có thẻ cụ thể và
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
4 truy cập vào nội dung văn bản phần tử.
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
5 Truy cập các thuộc tính của phần tử:

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68

Đặc điểm kỹ thuật tinh vi hơn về các yếu tố cần tìm là có thể bằng cách sử dụng XPath.XPath.

19.7.1.4. Sửa đổi tệp XMLModifying an XML File¶

root = ET.fromstring(country_data_as_string)
6 cung cấp một cách đơn giản để xây dựng các tài liệu XML và viết chúng vào các tệp. Phương pháp
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
7 phục vụ mục đích này.

Sau khi được tạo, một đối tượng

root = ET.fromstring(country_data_as_string)
3 có thể được thao tác bằng cách thay đổi trực tiếp các trường của nó (chẳng hạn như
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
4), thêm và sửa đổi các thuộc tính (phương thức
>>> root[0][1].text
'2008'
0), cũng như thêm trẻ em mới (ví dụ: với
>>> root[0][1].text
'2008'
1).

Hãy nói rằng chúng tôi muốn thêm một vào cấp bậc của mỗi quốc gia và thêm thuộc tính

>>> root[0][1].text
'2008'
2 vào phần tử cấp bậc:

>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')

XML của chúng tôi bây giờ trông như thế này:



     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

Chúng ta có thể loại bỏ các yếu tố bằng cách sử dụng

>>> root[0][1].text
'2008'
3. Hãy nói rằng chúng tôi muốn loại bỏ tất cả các quốc gia với thứ hạng cao hơn 50:

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

XML của chúng tôi bây giờ trông như thế này:

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

Chúng ta có thể loại bỏ các yếu tố bằng cách sử dụng >>> root[0][1].text '2008' 3. Hãy nói rằng chúng tôi muốn loại bỏ tất cả các quốc gia với thứ hạng cao hơn 50:Building XML documents¶

19.7.1.5. Xây dựng tài liệu XML

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

Hàm root = ET.fromstring(country_data_as_string) 5 cũng cung cấp một cách thuận tiện để tạo các phần tử phụ mới cho một phần tử đã cho:Parsing XML with Namespaces¶

19.7.1.6. Phân tích cú pháp XML với không gian tên

Nếu đầu vào XML có không gian tên, thẻ và thuộc tính có tiền tố ở dạng

>>> root[0][1].text
'2008'
5 sẽ được mở rộng thành
>>> root[0][1].text
'2008'
6 trong đó tiền tố được thay thế bằng URI đầy đủ. Ngoài ra, nếu có một không gian tên mặc định, rằng URI đầy đủ đó sẽ được chuẩn bị cho tất cả các thẻ không có lỗi.

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

Dưới đây là một ví dụ XML kết hợp hai không gian tên, một với tiền tố hư cấu và cái còn lại là không gian tên mặc định:

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

Một cách để tìm kiếm và khám phá ví dụ XML này là thêm thủ công URI vào mọi thẻ hoặc thuộc tính trong XPath của

>>> root[0][1].text
'2008'
7 hoặc
>>> root[0][1].text
'2008'
8:

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

Hai cách tiếp cận này cả hai đầu ra:

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

19.7.2. Hỗ trợ Xpath¶XPath support¶

Mô -đun này cung cấp hỗ trợ hạn chế cho các biểu thức XPath để định vị các phần tử trong cây. Mục tiêu là hỗ trợ một tập hợp con nhỏ của cú pháp viết tắt; Một động cơ XPath đầy đủ nằm ngoài phạm vi của mô -đun.

19.7.2.1. Thí dụ¶Example¶

Ở đây, một ví dụ chứng minh một số khả năng XPath của mô -đun. Chúng tôi sẽ sử dụng tài liệu XML

>>> root[0][1].text
'2008'
9 từ phần phân tích cú pháp XML:Parsing XML section:

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

19.7.2.2. Hỗ trợ Xpath Cú phápSupported XPath syntax¶

Cú pháp

Nghĩa

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
0

Chọn tất cả các phần tử con với thẻ đã cho. Ví dụ:

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
1 chọn tất cả các yếu tố con có tên
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
1 và
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
3 chọn tất cả các cháu có tên
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
4 ở tất cả trẻ em có tên
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
1.

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
6

Chọn tất cả các yếu tố trẻ em. Ví dụ,

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
7 chọn tất cả các cháu có tên
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
4.

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
9

Chọn nút hiện tại. Điều này chủ yếu là hữu ích ở đầu đường dẫn, để chỉ ra rằng nó là một con đường tương đối.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
0

Chọn tất cả các phần mềm, trên tất cả các cấp bên dưới phần tử hiện tại. Ví dụ,

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
1 chọn tất cả các phần tử
>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
4 trong toàn bộ cây.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
3

Chọn phần tử cha.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
4

Chọn tất cả các yếu tố có thuộc tính đã cho.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
5

Chọn tất cả các yếu tố mà thuộc tính đã cho có giá trị đã cho. Giá trị không thể chứa trích dẫn.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
6

Chọn tất cả các yếu tố có một đứa trẻ tên

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
0. Chỉ có trẻ em ngay lập tức được hỗ trợ.

>>> for country in root.findall('country'):
...     rank = country.find('rank').text
...     name = country.get('name')
...     print name, rank
...
Liechtenstein 1
Singapore 4
Panama 68
8

Chọn tất cả các yếu tố có một đứa trẻ tên

>>> for neighbor in root.iter('neighbor'):
...     print neighbor.attrib
...
{'name': 'Austria', 'direction': 'E'}
{'name': 'Switzerland', 'direction': 'W'}
{'name': 'Malaysia', 'direction': 'N'}
{'name': 'Costa Rica', 'direction': 'W'}
{'name': 'Colombia', 'direction': 'E'}
0 có nội dung văn bản hoàn chỉnh, bao gồm cả hậu duệ, bằng với
>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
0 đã cho.

>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
1

Chọn tất cả các yếu tố được đặt tại vị trí đã cho. Vị trí có thể là một số nguyên (1 là vị trí đầu tiên), biểu thức

>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
2 (cho vị trí cuối cùng) hoặc một vị trí so với vị trí cuối cùng (ví dụ:
>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
3).

Các vị từ (biểu thức trong dấu ngoặc vuông) phải được đi trước bằng tên thẻ, dấu hoa thị hoặc vị ngữ khác.

>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
4 Các vị từ phải được đi trước bằng một tên thẻ.

19.7.3. Tài liệu tham khảo¶Reference¶

19.7.3.1. Chức năng¶Functions¶

Bình luận Nhà máy yếu tố. Chức năng nhà máy này tạo ra một yếu tố đặc biệt sẽ được tuần tự hóa dưới dạng bình luận XML của bộ tuần tự tiêu chuẩn. Chuỗi nhận xét có thể là một chuỗi bytestring hoặc một chuỗi unicode. Văn bản là một chuỗi chứa chuỗi nhận xét. Trả về một thể hiện yếu tố đại diện cho một bình luận.

________ 85 ________ 86 (elem) ¶(elem)

Viết một cây phần tử hoặc cấu trúc phần tử vào sys.stdout. Chức năng này chỉ nên được sử dụng để gỡ lỗi.

Định dạng đầu ra chính xác là phụ thuộc thực hiện. Trong phiên bản này, nó được viết dưới dạng tệp XML thông thường.

Elem là một cây phần tử hoặc một phần tử riêng lẻ.

________ 85 ________ 88 (văn bản) ¶(text)

Phân tích phần XML từ hằng số chuỗi. Giống như

>>> for rank in root.iter('rank'):
...     new_rank = int(rank.text) + 1
...     rank.text = str(new_rank)
...     rank.set('updated', 'yes')
...
>>> tree.write('output.xml')
9. Văn bản là một chuỗi chứa dữ liệu XML. Trả về một ví dụ
root = ET.fromstring(country_data_as_string)
3.

________ 85 ________ 92 (trình tự, trình phân tích cú pháp = không) ¶(sequence, parser=None)

Phân tích một tài liệu XML từ một chuỗi các đoạn chuỗi. Trình tự là một danh sách hoặc chuỗi khác chứa các đoạn dữ liệu XML. Trình phân tích cú pháp là một thể hiện trình phân tích cú pháp tùy chọn. Nếu không được đưa ra, trình phân tích cú pháp



     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

3 tiêu chuẩn được sử dụng. Trả về một ví dụ
root = ET.fromstring(country_data_as_string)
3.

Mới trong phiên bản 2.7.

________ 85 ________ 96 (phần tử) ¶(element)

Kiểm tra xem một đối tượng có vẻ là một đối tượng phần tử hợp lệ. Phần tử là một thể hiện yếu tố. Trả về một giá trị thực nếu đây là một đối tượng phần tử.

________ 85 ________ 98 (Nguồn, sự kiện = Không, trình phân tích cú pháp = Không) ¶(source, events=None, parser=None)

Phân tích phần XML vào một cây phần tử tăng dần và báo cáo những gì mà người dùng sẽ tiếp tục. Nguồn là tên tệp hoặc đối tượng tệp chứa dữ liệu XML. Sự kiện là một danh sách các sự kiện để báo cáo lại. Nếu bị bỏ qua, chỉ có các sự kiện kết thúc của người Viking được báo cáo. Trình phân tích cú pháp là một thể hiện trình phân tích cú pháp tùy chọn. Nếu không được đưa ra, trình phân tích cú pháp



     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

3 tiêu chuẩn được sử dụng. Trình phân tích cú pháp không được hỗ trợ bởi
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
00. Trả về một iterator cung cấp các cặp
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
01.iterator providing
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
01 pairs.

Ghi chú

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
02 chỉ đảm bảo rằng nó đã nhìn thấy ký tự>> của một thẻ bắt đầu khi nó phát ra sự kiện bắt đầu, vì vậy các thuộc tính được xác định, nhưng nội dung của các thuộc tính văn bản và đuôi không được xác định tại điểm đó. Điều tương tự áp dụng cho trẻ em yếu tố; Họ có thể hoặc không thể có mặt.

Nếu bạn cần một yếu tố điền kinh hoàn toàn, thay vào đó, hãy tìm các sự kiện về kết thúc.

________ 85 ________ 104 (Nguồn, trình phân tích cú pháp = Không) ¶(source, parser=None)

Phân tích phần XML vào một cây phần tử. Nguồn là tên tệp hoặc đối tượng tệp chứa dữ liệu XML. Trình phân tích cú pháp là một thể hiện trình phân tích cú pháp tùy chọn. Nếu không được đưa ra, trình phân tích cú pháp



     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

3 tiêu chuẩn được sử dụng. Trả về một ví dụ
root = ET.fromstring(country_data_as_string)
6.

________ 85 ________ 108 (Target, Text = none) ¶(target, text=None)

Nhà máy nguyên tố PI. Chức năng nhà máy này tạo ra một yếu tố đặc biệt sẽ được tuần tự hóa dưới dạng hướng dẫn xử lý XML. Mục tiêu là một chuỗi chứa mục tiêu PI. Văn bản là một chuỗi chứa nội dung PI, nếu được đưa ra. Trả về một thể hiện phần tử, đại diện cho một lệnh xử lý.

________ 85 ________ 110 (tiền tố, uri) ¶(prefix, uri)

Đăng ký một tiền tố không gian tên. Cơ quan đăng ký là toàn cầu và bất kỳ ánh xạ hiện có nào cho tiền tố đã cho hoặc URI không gian tên sẽ bị xóa. Tiền tố là tiền tố không gian tên. URI là một không gian tên Uri. Các thẻ và các thuộc tính trong không gian tên này sẽ được tuần tự hóa với tiền tố đã cho, nếu có thể.

Mới trong phiên bản 2.7.

________ 85 ________ 112 (cha mẹ, tag, attrib(parent, tag, attrib={}, **extra)

Nhà máy Subelement. Hàm này tạo ra một thể hiện phần tử và nối nó vào một phần tử hiện có.

Tên phần tử, tên thuộc tính và giá trị thuộc tính có thể là chuỗi bytestrings hoặc unicode. Cha mẹ là yếu tố cha mẹ. Tag là tên subelement. Attrible là một từ điển tùy chọn, chứa các thuộc tính phần tử. Thêm chứa các thuộc tính bổ sung, được đưa ra dưới dạng đối số từ khóa. Trả về một thể hiện phần tử.

________ 85 ________ 114 (phần tử, mã hóa = "us-ascii", phương thức = "xml") ¶(element, encoding="us-ascii", method="xml")

Tạo một biểu diễn chuỗi của một phần tử XML, bao gồm tất cả các phần mềm. Phần tử là một ví dụ

root = ET.fromstring(country_data_as_string)
3. Mã hóa 1 là mã hóa đầu ra (mặc định là US-ASCII). Phương thức là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16,
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
17 hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
18 (mặc định là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16). Trả về một chuỗi được mã hóa chứa dữ liệu XML.

________ 85 ________ 121 (phần tử, mã hóa = "us-ascii", phương thức = "xml") ¶(element, encoding="us-ascii", method="xml")

Tạo một biểu diễn chuỗi của một phần tử XML, bao gồm tất cả các phần mềm. Phần tử là một ví dụ

root = ET.fromstring(country_data_as_string)
3. Mã hóa 1 là mã hóa đầu ra (mặc định là US-ASCII). Phương thức là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16,
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
17 hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
18 (mặc định là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16). Trả về một danh sách các chuỗi được mã hóa chứa dữ liệu XML. Nó không đảm bảo bất kỳ chuỗi cụ thể nào, ngoại trừ
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
27.

Mới trong phiên bản 2.7.

________ 85 ________ 112 (cha mẹ, tag, attrib(text, parser=None)

Nhà máy Subelement. Hàm này tạo ra một thể hiện phần tử và nối nó vào một phần tử hiện có.

Tên phần tử, tên thuộc tính và giá trị thuộc tính có thể là chuỗi bytestrings hoặc unicode. Cha mẹ là yếu tố cha mẹ. Tag là tên subelement. Attrible là một từ điển tùy chọn, chứa các thuộc tính phần tử. Thêm chứa các thuộc tính bổ sung, được đưa ra dưới dạng đối số từ khóa. Trả về một thể hiện phần tử.(text, parser=None)

________ 85 ________ 114 (phần tử, mã hóa = "us-ascii", phương thức = "xml") ¶

Tạo một biểu diễn chuỗi của một phần tử XML, bao gồm tất cả các phần mềm. Phần tử là một ví dụ root = ET.fromstring(country_data_as_string) 3. Mã hóa 1 là mã hóa đầu ra (mặc định là US-ASCII). Phương thức là import xml.etree.ElementTree as ET tree = ET.parse('country_data.xml') root = tree.getroot() 16, import xml.etree.ElementTree as ET tree = ET.parse('country_data.xml') root = tree.getroot() 17 hoặc import xml.etree.ElementTree as ET tree = ET.parse('country_data.xml') root = tree.getroot() 18 (mặc định là import xml.etree.ElementTree as ET tree = ET.parse('country_data.xml') root = tree.getroot() 16). Trả về một chuỗi được mã hóa chứa dữ liệu XML.Element Objects¶

________ 85 ________ 121 (phần tử, mã hóa = "us-ascii", phương thức = "xml") ¶(tag, attrib={}, **extra)

Tạo một biểu diễn chuỗi của một phần tử XML, bao gồm tất cả các phần mềm. Phần tử là một ví dụ

root = ET.fromstring(country_data_as_string)
3. Mã hóa 1 là mã hóa đầu ra (mặc định là US-ASCII). Phương thức là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16,
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
17 hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
18 (mặc định là
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
16). Trả về một danh sách các chuỗi được mã hóa chứa dữ liệu XML. Nó không đảm bảo bất kỳ chuỗi cụ thể nào, ngoại trừ
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
27.

________ 85 ________ 129 (văn bản, trình phân tích cú pháp = không) ¶

Phân tích phần XML từ hằng số chuỗi. Chức năng này có thể được sử dụng để nhúng các loại văn bản XML XML trong mã Python. Văn bản là một chuỗi chứa dữ liệu XML. Trình phân tích cú pháp là một thể hiện trình phân tích cú pháp tùy chọn. Nếu không được đưa ra, trình phân tích cú pháp


     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

3 tiêu chuẩn được sử dụng. Trả về một ví dụ
root = ET.fromstring(country_data_as_string)
3.

________ 85 ________ 133 (văn bản, trình phân tích cú pháp = không) ¶

Phân tích phần XML từ hằng số chuỗi và cũng trả về một từ điển ánh xạ từ phần tử ID: S sang các phần tử. Văn bản là một chuỗi chứa dữ liệu XML. Trình phân tích cú pháp là một thể hiện trình phân tích cú pháp tùy chọn. Nếu không được đưa ra, trình phân tích cú pháp


     name="Liechtenstein">
         updated="yes">2
        2008
        141100
         name="Austria" direction="E"/>
         name="Switzerland" direction="W"/>
    
     name="Singapore">
         updated="yes">5
        2011
        59900
         name="Malaysia" direction="N"/>
    
     name="Panama">
         updated="yes">69
        2011
        13600
         name="Costa Rica" direction="W"/>
         name="Colombia" direction="E"/>
    

3 tiêu chuẩn được sử dụng. Trả về một tuple chứa một thể hiện
root = ET.fromstring(country_data_as_string)
3 và từ điển.

19.7.3.2. Đối tượng phần tử

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

Lớp ________ 85 ________ 137 (TAG, Attrib

Lớp phần tử. Lớp này xác định giao diện phần tử và cung cấp triển khai tham chiếu của giao diện này.

Tên phần tử, tên thuộc tính và giá trị thuộc tính có thể là chuỗi bytestrings hoặc unicode. Tag là tên phần tử. Attrible là một từ điển tùy chọn, chứa các thuộc tính phần tử. Thêm chứa các thuộc tính bổ sung, được đưa ra dưới dạng đối số từ khóa.

________ 138¶

Một chuỗi xác định loại dữ liệu mà phần tử này biểu diễn (loại phần tử, nói cách khác).

________ 139¶ ________ 140¶

Các thuộc tính này có thể được sử dụng để chứa dữ liệu bổ sung được liên kết với phần tử. Giá trị của chúng thường là chuỗi nhưng có thể là bất kỳ đối tượng dành riêng cho ứng dụng. Nếu phần tử được tạo từ tệp XML, thuộc tính văn bản sẽ giữ văn bản giữa thẻ bắt đầu của phần tử và thẻ con đầu tiên hoặc thẻ cuối , hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41. Đối với dữ liệu XML()

Phần tử A có

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 cho cả thuộc tính văn bản và đuôi, phần tử B có văn bản
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
44 và đuôi
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
45, phần tử C có văn bản
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
46 và đuôi
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 và phần tử D có văn bản
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 và đuôi
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
49.

Để thu thập văn bản bên trong của một phần tử, hãy xem
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
50, ví dụ
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
51.(key, default=None)

Các ứng dụng có thể lưu trữ các đối tượng tùy ý trong các thuộc tính này.

________ 152¶

________ 156 ()()

Trả về các thuộc tính phần tử như một chuỗi của các cặp (tên, giá trị). Các thuộc tính được trả về theo thứ tự tùy ý.

________ 157 ()()

Trả về tên thuộc tính phần tử làm danh sách. Các tên được trả lại theo thứ tự tùy ý.

________ 158 (khóa, giá trị) ¶(key, value)

Đặt phím thuộc tính trên phần tử thành giá trị.

Các phương pháp sau đây hoạt động trên các yếu tố trẻ em (phụ).

________ 159 (Subelement) ¶(subelement)

Thêm phần tử SubLement vào cuối danh sách nội bộ của các phần tử này.

________ 160 (SubElements) ¶(subelements)

Nối các phần mềm từ một đối tượng chuỗi bằng 0 hoặc nhiều phần tử. Tăng

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
61 nếu SubLement không phải là đối tượng hợp lệ.

Mới trong phiên bản 2.7.

________ 162 (trận đấu) ¶(match)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

________ 164 (trận đấu) ¶(match)

Tìm tất cả các phần mềm phù hợp, theo tên thẻ hoặc đường dẫn. Trả về một danh sách chứa tất cả các yếu tố phù hợp theo thứ tự tài liệu.

________ 165 (khớp, mặc định = không) ¶(match, default=None)

Tìm văn bản cho trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về nội dung văn bản của phần tử khớp đầu tiên hoặc mặc định nếu không tìm thấy phần tử nào. Lưu ý rằng nếu phần tử phù hợp không có nội dung văn bản, một chuỗi trống được trả về.

________ 166 ()()

Không dùng nữa kể từ phiên bản 2.7: Sử dụng

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
67 hoặc lặp lại.Use
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
67 or iteration.

________ 168 (tag = none) ¶(tag=None)

Thay vào đó không dùng nữa vì phiên bản 2.7: sử dụng phương thức

>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
1 thay thế.Use method
>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
1 instead.

________ 170 (chỉ mục, phần tử) ¶(index, element)

Chèn một phần phụ tại vị trí đã cho trong yếu tố này.

________ 171 (tag = none) ¶(tag=None)

Tạo một bộ lặp cây với phần tử hiện tại là gốc. Trình lặp lặp lại trên phần tử này và tất cả các phần tử bên dưới nó, theo thứ tự tài liệu (độ sâu đầu tiên). Nếu thẻ không phải là

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
73, chỉ các phần tử có thẻ bằng thẻ được trả về từ trình lặp. Nếu cấu trúc cây được sửa đổi trong quá trình lặp, kết quả không được xác định.iterator with the current element as the root. The iterator iterates over this element and all elements below it, in document (depth first) order. If tag is not
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 or
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
73, only elements whose tag equals tag are returned from the iterator. If the tree structure is modified during iteration, the result is undefined.

Mới trong phiên bản 2.7.

________ 162 (trận đấu) ¶(match)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

Mới trong phiên bản 2.7.

________ 162 (trận đấu) ¶()

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

Mới trong phiên bản 2.7.

________ 162 (trận đấu) ¶(tag, attrib)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

________ 164 (trận đấu) ¶(subelement)

Tìm tất cả các phần mềm phù hợp, theo tên thẻ hoặc đường dẫn. Trả về một danh sách chứa tất cả các yếu tố phù hợp theo thứ tự tài liệu.

________ 165 (khớp, mặc định = không) ¶

Tìm văn bản cho trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về nội dung văn bản của phần tử khớp đầu tiên hoặc mặc định nếu không tìm thấy phần tử nào. Lưu ý rằng nếu phần tử phù hợp không có nội dung văn bản, một chuỗi trống được trả về.

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

________ 166 ()ElementTree Objects¶

Không dùng nữa kể từ phiên bản 2.7: Sử dụng
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
67 hoặc lặp lại.(element=None, file=None)

________ 168 (tag = none) ¶

Thay vào đó không dùng nữa vì phiên bản 2.7: sử dụng phương thức

>>> for child in root:
...     print child.tag, child.attrib
...
country {'name': 'Liechtenstein'}
country {'name': 'Singapore'}
country {'name': 'Panama'}
1 thay thế.

________ 170 (chỉ mục, phần tử) ¶(element)

Chèn một phần phụ tại vị trí đã cho trong yếu tố này.

________ 162 (trận đấu) ¶(match)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

________ 164 (trận đấu) ¶(match)

Tìm tất cả các phần mềm phù hợp, theo tên thẻ hoặc đường dẫn. Trả về một danh sách chứa tất cả các yếu tố phù hợp theo thứ tự tài liệu.

________ 165 (khớp, mặc định = không) ¶(match, default=None)

Tìm văn bản cho trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về nội dung văn bản của phần tử khớp đầu tiên hoặc mặc định nếu không tìm thấy phần tử nào. Lưu ý rằng nếu phần tử phù hợp không có nội dung văn bản, một chuỗi trống được trả về.

________ 166 ()(tag=None)
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
97()

Không dùng nữa kể từ phiên bản 2.7: Sử dụng

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
67 hoặc lặp lại.

________ 171 (tag = none) ¶(tag=None)

Tạo một bộ lặp cây với phần tử hiện tại là gốc. Trình lặp lặp lại trên phần tử này và tất cả các phần tử bên dưới nó, theo thứ tự tài liệu (độ sâu đầu tiên). Nếu thẻ không phải là

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
41 hoặc
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
73, chỉ các phần tử có thẻ bằng thẻ được trả về từ trình lặp. Nếu cấu trúc cây được sửa đổi trong quá trình lặp, kết quả không được xác định.

________ 162 (trận đấu) ¶(match)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

Mới trong phiên bản 2.7.

________ 162 (trận đấu) ¶(source, parser=None)

Tìm các trận đấu phù hợp đầu tiên của Subelement. khớp có thể là một tên thẻ hoặc đường dẫn. Trả về một thể hiện phần tử hoặc

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

________ 164 (trận đấu) ¶(file, encoding="us-ascii", xml_declaration=None, default_namespace=None, method="xml")

Tìm tất cả các phần mềm phù hợp, theo tên thẻ hoặc đường dẫn. Trả về một danh sách chứa tất cả các yếu tố phù hợp theo thứ tự tài liệu.

Đây là tệp XML sẽ bị thao túng:

root = ET.fromstring(country_data_as_string)
0

Ví dụ về việc thay đổi thuộc tính Target Target của mỗi liên kết trong đoạn đầu tiên:

root = ET.fromstring(country_data_as_string)
1

19.7.3.4. Đối tượng QnameQName Objects¶

Lớp ________ 85 ________ 211 (text_or_uri, tag = none) ¶(text_or_uri, tag=None)

QNAME WRAPPER. Điều này có thể được sử dụng để bọc giá trị thuộc tính Qname, để có được xử lý không gian tên thích hợp trên đầu ra. Text_or_uri là một chuỗi chứa giá trị qname, ở dạng {uri} cục bộ, hoặc, nếu đối số thẻ được đưa ra, phần URI của Qname. Nếu TAG được đưa ra, đối số đầu tiên được hiểu là một URI và đối số này được hiểu là một tên địa phương.

root = ET.fromstring(country_data_as_string)
12 Các trường hợp mờ đục.

19.7.3.5. Đối tượng TreeBuilderTreeBuilder Objects¶

Lớp ________ 85 ________ 214 (Element_Factory = none) ¶(element_factory=None)

Trình tạo cấu trúc phần tử chung. Nhà xây dựng này chuyển đổi một chuỗi các cuộc gọi phương thức bắt đầu, dữ liệu và kết thúc sang cấu trúc phần tử được hình thành tốt. Bạn có thể sử dụng lớp này để xây dựng cấu trúc phần tử bằng trình phân tích cú pháp XML tùy chỉnh hoặc trình phân tích cú pháp cho một số định dạng giống như XML khác. Element_factory được gọi để tạo các phiên bản

root = ET.fromstring(country_data_as_string)
3 mới khi được đưa ra.

________ 216 ()()

Xóa các bộ đệm xây dựng và trả về yếu tố tài liệu Toplevel. Trả về một ví dụ

root = ET.fromstring(country_data_as_string)
3.

________ 218 (dữ liệu) ¶(data)

Thêm văn bản vào phần tử hiện tại. Dữ liệu là một chuỗi. Điều này phải là một bytestring hoặc chuỗi unicode.

________ 219 (thẻ) ¶(tag)

Đóng phần tử hiện tại. Tag là tên phần tử. Trả về phần tử đóng.

________ 220 (thẻ, attrs) ¶(tag, attrs)

Mở một yếu tố mới. Tag là tên phần tử. Attrs là một từ điển chứa các thuộc tính phần tử. Trả về phần tử đã mở.

Ngoài ra, một đối tượng tùy chỉnh ____221 có thể cung cấp phương thức sau:

________ 222 (Tên, Pubid, System) ¶(name, pubid, system)

Xử lý một tuyên bố doctype. Tên là tên doctype. PubID là định danh công khai. Hệ thống là định danh hệ thống. Phương pháp này không tồn tại trên lớp

root = ET.fromstring(country_data_as_string)
21 mặc định.

Mới trong phiên bản 2.7.

19.7.3.6. XMLPARSER Đối tượngXMLParser Objects¶

Lớp ________ 85 ________ 225 (html = 0, target = none, mã hóa = không) ¶(html=0, target=None, encoding=None)

root = ET.fromstring(country_data_as_string)
3 Trình tạo cấu trúc cho dữ liệu nguồn XML, dựa trên trình phân tích cú pháp người nước ngoài. HTML là các thực thể HTML được xác định trước. Cờ này không được hỗ trợ bởi việc thực hiện hiện tại. Mục tiêu là đối tượng đích. Nếu bị bỏ qua, người xây dựng sử dụng một thể hiện của lớp TreeBuilder tiêu chuẩn. Mã hóa 1 là tùy chọn. Nếu được đưa ra, giá trị ghi đè mã hóa được chỉ định trong tệp XML.

________ 216 ()()

Xóa các bộ đệm xây dựng và trả về yếu tố tài liệu Toplevel. Trả về một ví dụ

root = ET.fromstring(country_data_as_string)
3.

________ 222 (Tên, Pubid, System) ¶(name, pubid, system)

Xử lý một tuyên bố doctype. Tên là tên doctype. PubID là định danh công khai. Hệ thống là định danh hệ thống. Phương pháp này không tồn tại trên lớp

root = ET.fromstring(country_data_as_string)
21 mặc định.Define the
root = ET.fromstring(country_data_as_string)
29 method on a custom TreeBuilder target.

Mới trong phiên bản 2.7.(data)

19.7.3.6. XMLPARSER Đối tượng

Lớp ________ 85 ________ 225 (html = 0, target = none, mã hóa = không) ¶

root = ET.fromstring(country_data_as_string)
2

root = ET.fromstring(country_data_as_string)
3 Trình tạo cấu trúc cho dữ liệu nguồn XML, dựa trên trình phân tích cú pháp người nước ngoài. HTML là các thực thể HTML được xác định trước. Cờ này không được hỗ trợ bởi việc thực hiện hiện tại. Mục tiêu là đối tượng đích. Nếu bị bỏ qua, người xây dựng sử dụng một thể hiện của lớp TreeBuilder tiêu chuẩn. Mã hóa 1 là tùy chọn. Nếu được đưa ra, giá trị ghi đè mã hóa được chỉ định trong tệp XML.

1(1,2,3,4)(1,2,3,4)

Kết thúc dữ liệu cho ăn cho trình phân tích cú pháp. Trả về một cấu trúc phần tử.