lxml 文本獲取

2021-05-28 10:14 更新

我們用XPath中的text()方法獲取節(jié)點中的文本

from lxml import etree

text='''
<div>
    <ul>
         <li class="item-0"><a href="link1.html">第一個</a></li>
         <li class="item-1"><a href="link2.html">second item</a></li>
     </ul>
 </div>
'''

html=etree.HTML(text,etree.HTMLParser())
result=html.xpath('//li[@class="item-1"]/a/text()') #獲取a節(jié)點下的內(nèi)容
result1=html.xpath('//li[@class="item-1"]//text()') #獲取li下所有子孫節(jié)點的內(nèi)容

print(result)
print(result1)

屬性獲取

使用@符號即可獲取節(jié)點的屬性,如下:獲取所有l(wèi)i節(jié)點下所有a節(jié)點的href屬性

result=html.xpath('//li/a/@href')  #獲取a的href屬性
result=html.xpath('//li//@href')   #獲取所有l(wèi)i子孫節(jié)點的href屬性


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號