網頁解析的方式

2021-09-02 15:33:37 字數 1162 閱讀 3307

一.方式

1、正規表示式(最難)

\d 表示匹配乙個數字

\w 表示匹配乙個數字或字母

+ 表示前面的字元至少出現1次,不能為0(不出現)

^ 表示必須以什麼字元開頭

$ 表示必須以什麼字元結尾

. 可以匹配某乙個字元後跟的任意乙個字元

* 可以匹配前面乙個字元0個或任意多個字元

.* 表示任意字元出現多次,包含0次

2、xpath (最簡單)

3、cssselect (需要css基礎)

4、bs (一般)

二.特點

三.方法

xpath基本語法

1、通過標籤名找標籤,找到的不是標籤內的文字,是整個標籤

//div

輸出結果:2、通過屬性查詢

標籤的常見屬性:id class href alt...

id、class相當於給標籤起了乙個別名

alt屬性,屬於img標籤的乙個屬性,一般用於儲存名稱

通過屬性查詢:

例如://div/a[@href]

//div[@class="zhiyou"]

3、查詢符合條件的第2個標籤

//div[@class="zhiyou"][2]

4、按照標籤的層次查詢

//div/ul/li/div/a/img

5、查詢屬性值(src屬於img標籤和屬性)

//ul/li/div/a/img/@src

6、查詢標籤內的文字,只能獲取a標籤內的一級文字

//a/text()

獲取所有本文,查詢class="zhiyou"的div標籤內所有文字(包含div子標籤)

//div[@class="zhiyou"]//text()

7、查詢具體位置的標籤

//body/p[position() = 1]

//body/p[position() < 3]

//div/a[last()]

8、查詢包含某個類名的標籤

//div[contains(@class, "zhiyou")]

9、查詢name屬性等於zhiyou所有標籤

//*[@name="zhiyou"]

四.誰有其他三個的(簡介)的提供一下

Python爬蟲解析網頁的4種方式

正規表示式 regular expression 描述了一種字串匹配的模式 pattern 可以用來檢查乙個串是否含有某種子串 將匹配的子串替換或者從某個串中取出符合某個條件的子串等 正則的好處是編寫麻煩,理解不容易,但是匹配效率很高,不過時至今日有太多現成的html內容解析庫之後,我個人不太建議再...

網頁請求方式獲取,django原始碼解析

一 urls.py檔案中的路由配置 研究路由匹配中是怎麼自動獲取到get和post請求的 二 base.py原始碼檔案中,as view是乙個類方法,關掉類方法體內的邏輯判斷,先看返回值是view,再點進去看view方法內部做了什麼,三 view函式體內利用反射方法hasattr獲取url的請求方式...

解析網頁之xpath解析

xpath指的是使用路徑表示式在 xml 文件中查詢資訊的語言。xpath的七個節點術語 元素 屬性 文字 命名空間 處理指令 注釋以及文件 根 節點。每個元素以及屬性都有乙個父節點。元素節點可有零個 乙個或多個子節點。就好像每一片樹葉都只能在一根樹枝上,但每一根樹枝卻有很多樹葉。以此類推,樹幹是所...