Day 18 解析資料

2021-10-10 05:00:17 字數 2363 閱讀 9049

day 18

正規表示式解析資料

用正規表示式的方式來提取資料,在此不在贅述

補充一些正規表示式常用的符號

beautifulsoup解析資料

from bs4 import beautifulsoup 匯入第三方庫,注意大小寫

根據網頁內容建立解析器物件 - 格式為:beautifulsoup(網頁資料,解析器型別) 解析器型別一般為lxml或html

從建立的解析器物件中獲取標籤

1.解析器物件.select(css選擇器) - 獲取選擇器選中的標籤

2.解析器物件.select_one(css選擇器) - 獲取選擇器選中的第乙個標籤

3.解析器物件.find_all(標籤) - 通過標籤獲取內容

4.解析器物件.find_all(attrs = ) - 獲取指定屬性是指定值的所有標籤

獲取標籤內容和標籤屬性值

1.標籤物件.string - 返回字串(只提取標籤中的文字資訊,如果有其他子標籤會返回none)

2.標籤物件.get_text() - 返回字串(把標籤中包括子標籤中的文字資訊全部提取出來,以字串形式返回)

3.標籤物件.contents - 返回列表(可以提取子標籤中的內容,把子標籤作為列表元素返回)

4.標籤物件.attrs[屬性名] - 獲取指定屬性名對應的屬性值

pyquery解析資料

from pyquery import pyquery 匯入第三方庫,注意大小寫

根據網頁內容建立解析器物件 - 格式為:pyquery(html格式字串)

從建立的解析器物件中獲取標籤

解析器物件(css選擇器) - 選中css選擇器選中的標籤,返回pyquery物件

獲取標籤內容和標籤屬性值

1.pyquery物件.text() - 返回字串(只提取標籤中的文字資訊,如果有其他子標籤會返回none)

2.pyquery物件.val() - 獲取value屬性

3.pyquery物件.attr(屬性名) - 獲取指定屬性名對應的屬性值

xpath解析資料

通過需要的標籤在網頁結構(html/xml)中的標籤路徑來獲取指定標籤

xml和json一樣是一種通訊格式,用於多語言程式之間的資料傳輸

xml和json同樣都是以節點(標籤)為基本單位來提供資料的

但xml的安全性較高,加密便捷

而json的傳輸效率更快,更輕量級

一般在匯入pyquery模組之後會自動匯入lxml模組

from lxml import etree 匯入模組

獲取樹對應的根節點物件 - 格式為:etree.解析器型別(網頁資料) 解析器型別包括xml和html(樹即整個html或xml,根節點就是xml或html資料中最外層的標籤或節點)

通過xpath解析資料

a. / - 從根節點開始的絕對路徑(與前面的節點物件沒有關係,都會從根節點開始查詢)

b. // - 從任意位置開始按路徑查詢

c. ./ - 從當前位置開始查詢

d. …/ - 從當前節點的父節點開始查詢

獲取標籤內容和標籤屬性值

a. text() - 獲取標籤內容

b. @屬性名 - 獲取指定標籤的指定屬性值

謂詞 - 格式為:路徑[謂詞] 按照謂詞對應的條件通過指定路徑獲取標籤

1)[n] - 獲取第n個標籤,n從1開始

2)[last()] - 獲取最後乙個標籤;[last()-n] - 獲取最後乙個的前n個標籤(獲取倒數第n+1個標籤)

[position()n] - 獲取第n個標籤之後的標籤

[@屬性名] - 獲取擁有指定屬性名的標籤;[@屬性名=值] - 獲取指定屬性是指定值的標籤;[@屬性名》數值] - 獲取數值滿足比較運算子的屬性名對應的標籤

萬用字元

a. * - 獲取任意節點或任意屬性

b. //[@屬性] - 獲取設定了指定屬性的所有節點

c. //*[@] - 獲取所有設定了屬性的節點

選取多個路徑(分支)

| - 將多個路徑用 | 隔開

閉關日記 Day18

陰。好幾天沒更新日記了,說一下這幾天完成的事和正在做的事。專案f基本完結,專案b在除錯相容 360瀏覽器缺省會進入相容模式來渲染 練車 1號考科三 翻譯 uwp設計指南 當前進度1 時間碎片管理的uwp著手開發 專案t 另外,乙個學長想讓我幫忙做乙個h5小遊戲,在溝通中。target 003 時長 ...

前端學習Day18

一 3d的旋轉 增加了rotatez 和 rotate3d x,y,z,度數 注 x y z 它們是乙個向量值,0是不旋轉,1是旋轉 eg rotate3d 1,1,0,45deg 等價於 rotatex 45deg rotatey 45deg 二 3d的縮放 增加了 scalez 和 scale3...

每日演算法 day 18

那些你早出晚歸付出的刻苦努力,你不想訓練,當你覺的太累了但還是要咬牙堅持的時候,那就是在追逐夢想,不要在意終點有什麼,要享受路途的過程,或許你不能成就夢想,但一定會有更偉大的事情隨之而來。mamba out 2020.3.1 不用字串也能做 include include using namespa...