爬蟲解析庫快速歸納
阿新 • • 發佈:2019-04-23
spa ng- @class 過濾 getting tps .html imp www
XPath
- XPath也叫XML路徑語言,用來搜索XML文檔
- 在python中,一般使用lxml庫來實現XPath解析:
from lxml import etree html = etree.parse('./test.html', etree.HTMLParser()) # 加載目標HTML文檔 # 定位節點 result = html.xpath('//span') # 常規節點搜索,返回值為節點列表 result = html.xpath('//span[@class="xxx"]') # 在搜索時可以利用@進行屬性過濾 # 獲取信息 result = html.xpath('//span[@class="xxx"]/text()') # 獲得節點內的文本 result = html.xpath('//span/@class') # 獲得節點屬性 # 高級過濾(函數過濾) result = html.xpath('//span[contains(@class, "li")]') # 搜索屬性class中包含字符"li"的span節點 # ?上面這種方式在某個節點的某個屬性有多個值時經常用到,如某個節點的class屬性通常有多個 result = html.xpath('//span[contains(@class, "li") and @name="item"]') # 多屬性匹配
Beautiful Soup
- Beautiful Soup是在其他解析器(包括lxml)的基礎之上構建的強大的python解析工具
- Beautiful Soup 4 Document
爬蟲解析庫快速歸納