python爬蟲之網頁信息表達形式
爬到的html頁面中信息那麼多,你又不是那麼專業,怎麼獲取到你想要的信息?
- 先普及一些關於html頁面中信息的組成,下面是我截取的百度的網頁源碼組成部分,除了url是藍色的,明顯的有三種顏色不同,形式各異的標籤語言,分別是XML,JSON,YAML
- XML
- 看單詞就知道跟HTML很像,確實是從HTML語言發展過來的
- XML成爲擴展標籤語言,主要以標籤爲主,組織信息
- 標籤是啥?
- 標籤是:< 標籤名 標籤屬性(標籤的大小,顏色等)>…(內部的具體信息)…< /標籤名 >,形如< p > … < /p >
- 註釋< !-- 我是註釋 – >
- 單括號標籤 < name / >,a標籤就是單邊
- JSON(就是紅色那塊)
- 用有類型的鍵值對構造的信息表達方式,key :value,其中key和value都是指定類型的
- 本質:JavaScript語言中對象的字符串表示法,就是js這個語言中的一種數據類型,可以將json語言轉成js語言的編程部分
- 形式:
-
注意key和value都是有類型的
-
嵌套使用,用花括號連接
-
一個key,對應多個value,用方括號連接
-
一共就三種信息表達形式,兩種都講了,還有一種就提一下
- YAML(不好意思,這裏面沒有)
- 特徵:無類型的鍵值對,來作爲信息的表達形式
- 應用:各類系統的配置文件,有註釋易讀
- 形式
- 無類型
- 縮進表達所屬關係
- 無類型
- “-”表達並列關係
- | 表達數據塊 # 表示註釋
對比一下上述三種信息表達方式
- 分別用三中信息表達形式表示同樣的一段信息
- XML形式
- JSON形式
- YAML形式
- 通過對比發現,用三種形式表達相同數據,發現:
- YAML利用率比較高,不是嗎?廢話比較少,無用的符號與有用的數據佔比較高。所以YAML可讀性好,用於書寫各類系統的配置文件
- JSON由於和JS語言的關係,可以用於移動應用雲端和節點的信息通信
- XML從HTML發展來的,所以作爲HTML網頁的框架