爬蟲利器——lxml模組(應用xpath技術)
阿新 • • 發佈:2018-11-17
一、lxml介紹
第三方庫lxml是第一款表現出高效能特徵的python xml庫,天生支援Xpath1.0、XSLT1.0、定製元素類,甚至python風格的資料繫結介面。lxml是通過Cpython實現的,構建在兩個C庫上(libxml2和libxslt),為執行解析、序列化、轉換等核心任務提供了主要動力,是爬蟲處理網頁資料的一件利器。
lxml對xml和html都有很好的支援,分別使用 lxml.etree 和 lxml.html 兩個模組。
1、安裝第三方lxml模組
# 通過pip直接下載安裝 pip install lxml # 通過git克隆原始碼進行下載安裝 git clone https://github.com/lxml/lxml.git lxml
2、lxml.html和lxml.etree模組
lxml.html&lxml.etree這兩個模組是最常用的HTML文件和XML文件解析模組。
HTML(HyperText Markup Language)超文字標記語言。
XML(Extensible Markup Language)可擴充套件標記語言。
3、lxml官方文件
二、Xpath語法
1、選取節點
Xpath使用路徑表示式在XML文件中選取節點。節點是通過沿著路徑或者step來選取的。常用的路徑表示式如下:
下面為一些路徑表示式及表示式結果:
2、謂語(Predicates)
謂語用來查詢某個特定的節點或者包含某個指定的值的節點。謂語被嵌在方括號中。
下面為一些帶有謂語的路徑表示式,及表示式結果: