您好,登錄后才能下訂單哦!
這篇文章主要介紹“python中l(wèi)xml的etree標(biāo)簽創(chuàng)建”,在日常操作中,相信很多人在python中l(wèi)xml的etree標(biāo)簽創(chuàng)建問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”python中l(wèi)xml的etree標(biāo)簽創(chuàng)建”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
pip install lxml
from lxml import etree root = etree.Element('root')
from lxml import etree root = etree.Element('root') span = etree.SubElement(root, 'span')
from lxml import etree root = etree.Element('root') span = etree.SubElement(root, 'span') root.remove(span)
from lxml import etree root = etree.Element('root') root.clear()
from lxml import etree root = etree.Element('root') span = etree.SubElement(root, 'span') # 獲取標(biāo)簽數(shù) len(root) # 獲取標(biāo)簽索引號(hào),如果有多個(gè)相同標(biāo)簽的話,可以區(qū)分 root.index(span) # 按位置插入 root.insert(0, etree.Element('p')) # 尾部添加 root.append(etree.Element('strong'))
獲取標(biāo)簽父節(jié)點(diǎn)的兩種方法:
from lxml import etree root = etree.Element('root') span = etree.SubElement(root, 'span') # 獲取父節(jié)點(diǎn)方法一 span.getparent().tag # 獲取父節(jié)點(diǎn)方法二,用列表獲取子節(jié)點(diǎn),再獲取父節(jié)點(diǎn) root[0].getparent().tag
from lxml import etree root = etree.Element('root') root.set('title', '這是一個(gè)root標(biāo)簽')
獲取屬性的三種方法
from lxml import etree root = etree.Element('root') # 獲取屬性方法一 root.get('title') # 獲取屬性方法二,參考字典的操作 root.keys(),root.values(),root.items() # 獲取屬性方法三,直接拿到屬性存放的字典 root.attrib
添加文本和追加文本
from lxml import etree root = etree.Element('root') # 標(biāo)簽內(nèi)添加文本 root.text='i am autofelix' # 標(biāo)簽后追加文本 root.tail = 'i am autofelix'
from lxml import etree root = etree.Element('root') word = root.xpath('//text()') word[0].getparent().tag
from lxml import etree root = etree.Element('root') word = root.xpath('//text()') # 是否是text文本 word.is_text # 是否是tail文本 word.is_tail
from lxml import etree html = etree.fromstring('<root>autofelix</root>') html.tag etree.tostring(html)
from lxml import etree html = etree.XML('<root>autofelix</root>') html.tag etree.tostring(html)
from lxml import etree # 去除xml文件里的空行 parser= etree.XMLParser(remove_blank_text=True) root = etree.XML('<root> auto felix </root>', parser) print etree.tostring(root)
HTML方法,如果沒(méi)有<html>和<body>標(biāo)簽,會(huì)自動(dòng)補(bǔ)上
from lxml import etree html = etree.HTML('<root>autofelix</root>') etree.tostring(html)
from lxml import etree root = etree.XML('<root><a class="uname">i am autofelix<b/><c/><b/></a></root>') # findall操作返回列表 root.findall('a')[0].text # find操作就相當(dāng)與找到了這個(gè)元素節(jié)點(diǎn),返回匹配到的第一個(gè)元素 root.find('.//a').text # 配合列表解析 [ b.text for b in root.findall('.//a') ] # 根據(jù)屬性查詢 root.findall('.//a[@class]')[0].tag
到此,關(guān)于“python中l(wèi)xml的etree標(biāo)簽創(chuàng)建”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。