標準文件翻譯 et tree

2021-08-15 12:03:42 字數 3582 閱讀 9760

element中的遍歷與查詢

element.iter(tag=none):遍歷該element所有後代,也可以指定tag進行遍歷尋找。

element.findall(path):查詢當前元素下tag或path能夠匹配的直系節點。

element.find(path):查詢當前元素下tag或path能夠匹配的首個直系節點。

element.text: 獲取當前元素的text值。

element.get(key, default=none):獲取元素指定key對應的屬性值,如果沒有該屬性,則返回default值。

element物件 

class xml.etree.elementtree.element(tag, attrib={}, **extra)

tag:string,元素代表的資料種類。

text:string,元素的內容。

tail:string,元素的尾形。

attrib:dictionary,元素的屬性字典。

#針對屬性的操作

clear():清空元素的後代、屬性、text和tail也設定為none。

get(key, default=none):獲取key對應的屬性值,如該屬性不存在則返回default值。

items():根據屬性字典返回乙個列表,列表元素為(key, value)。

keys():返回包含所有元素屬性鍵的列表。

set(key, value):設定新的屬性鍵與值。

#針對後代的操作

extend(subelements):增加一串元素物件作為子元素。#python2.7新特性

find(match):尋找第乙個匹配子元素,匹配物件可以為tag或path。

findall(match):尋找所有匹配子元素,匹配物件可以為tag或path。

findtext(match):尋找第乙個匹配子元素,返回其text值。匹配物件可以為tag或path。

insert(index, element):在指定位置插入子元素。

iter(tag=none):生成遍歷當前元素所有後代或者給定tag的後代的迭代器。#python2.7新特性

iterfind(match):根據tag或path查詢所有的後代。

itertext():遍歷所有後代並返回text值。

remove(subelement):刪除子元素。

elementtree物件

複製**

class xml.etree.elementtree.elementtree(element=none, file=none)

element如果給定,則為新的elementtree的根節點。

_setroot(element):用給定的element替換當前的根節點。慎用。

# 以下方法與element類中同名方法近似,區別在於它們指定以根節點作為操作物件。

find(match)

findall(match)

findtext(match, default=none)

getroot():獲取根節點.

iter(tag=none)

iterfind(match)

parse(source, parser=none):裝載xml物件,source可以為檔名或檔案型別物件.

write(file, encoding="us-ascii", xml_declaration=none, default_namespace=none,method="xml") 

複製**

模組方法

複製**

xml.etree.elementtree.comment(text=none)

建立乙個特別的element,通過標準序列化使其代表了乙個comment。comment可以為bytestring或unicode。

xml.etree.elementtree.dump(elem)

生成乙個element tree,通過sys.stdout輸出,elem可以是元素樹或單個元素。這個方法最好只用於debug。

xml.etree.elementtree.fromstring(text)

text是乙個包含xml資料的字串,與xml()方法類似,返回乙個element例項。

xml.etree.elementtree.fromstringlist(sequence, parser=none)

從字串的序列物件中解析xml文件。預設parser為xmlparser,返回element例項。

xml.etree.elementtree.iselement(element)

檢查是否是乙個element物件。

xml.etree.elementtree.iterparse(source, events=none, parser=none)

將檔案或包含xml資料的檔案物件遞增解析為element tree,並且報告進度。events是乙個匯報列表,如果忽略,將只有end事件會匯報出來。

注意,iterparse()只會在看見開始標籤的">"符號時才會丟擲start事件,因此屆時屬性是已經定義了,但是text和tail屬性在那時還沒有定義,同樣子元素也沒有定義,因此他們可能不能被顯示出來。如果你想要完整的元素,請查詢end事件。

xml.etree.elementtree.parse(source, parser=none)

將乙個檔案或者字串解析為element tree。

xml.etree.elementtree.processinginstruction(target, text=none)

這個方法會建立乙個特別的element,該element被序列化為乙個xml處理命令。

xml.etree.elementtree.register_namespace(prefix, uri)

註冊命名空間字首。這個註冊是全域性有效,任何已經給出的字首或者命名空間uri的對映關係會被刪除。

xml.etree.elementtree.subelement(parent, tag, attrib={}, **extra)

子元素工廠,建立乙個element例項並追加到已知的節點。

xml.etree.elementtree.tostring(element, encoding="us-ascii", method="xml")

生成乙個字串來表示表示xml的element,包括所有子元素。element是element例項,method為"xml","html","text"。返回包含了xml資料的字串。

xml.etree.elementtree.tostringlist(element, encoding="us-ascii", method="xml")

生成乙個字串來表示表示xml的element,包括所有子元素。element是element例項,method為"xml","html","text"。返回包含了xml資料的字串列表。

xml.etree.elementtree.xml(text, parser=none)

從乙個字串常量中解析出xml片段。返回element例項。

xml.etree.elementtree.xmlid(text, parser=none)

從字串常量解析出xml片段,同時返回乙個字典,用以對映element的id到其自身。

varnish vcl man 文件翻譯

近來聽說了varnish這個東東,看描述說比squid效能強不少,但是國內知道這個玩意的人少上加少,所以特意翻譯一下方便varnish這個東西再國內的推廣.另外也被自己以後查閱提供點方便.名稱 vcl varnish configuration language varnish配置語言 描述 這裡沒...

varnish vcl man 文件翻譯

近來聽說了varnish這個東東,看描述說比squid效能強不少,但是國內知道這個玩意的人少上加少,所以特意翻譯一下方便varnish這個東西再國內的推廣.另外也被自己以後查閱提供點方便.名稱 vcl varnish configuration language varnish配置語言 描述 這裡沒...

NHibernate文件翻譯

這裡是目錄 1.體系結構 2.isessionfactory配置 3.持久化類 persistent classes 5.集合類 collections 對映 6.關聯對映 7.示例 parent child 8.nhibernate快取 nhibernate.caches 10.nhibernat...