1. 概念:什麼是信息標記
簡單來說,信息標記就是給一個信息做標記(呃,雖然有點傻,但好像就是這樣)。例如:“北京市中關村”,給它做標記的話,它是一個地名。而“北京理工大學”,它是一所大學的名字。如果對一組信息做上標記呢?
信息的標記:
- 標記後的信息可形成信息組織結構,增加了信息的維度。
- 標記後的信息可用於通信、存儲或展示。
- 標記的結構與信息一樣具有重要價值。
- 標記後的信息更利於程序理解和運用,也更有利於人的理解與運用。
2. 信息標記的三種形式
HTML(超文本標記語言)是WWW(World Wide Web)的信息組織方式。它將聲音、圖像、視頻,等超文本信息嵌入到文本中。HTML通過預定的<>…</>標籤形式組織不同類型的信息。
簡單來說,現在國際公認的信息標記一般意義上的種類有三種形式:XML、JSON、YAML
- XML(eXtensible Markup Langue)
可以看出和HTML很類似~
當標籤中沒有元素時,用縮寫形式,一對尖括號即可</>。若標籤中有元素,要用<>…</>
也可以嵌入註釋,以尖括號、歎號開頭,以尖括號結尾
- JSON(JavaScript Object Notation)
有類型的鍵值對,key:value ,都要增加雙引號來表達它是字符串的形式。如果值是一個數字,直接寫數字就可以了。
當一個鍵對應多個值的時候,採用[ ]和,來組織。
嵌套使用時,用{ }來體現。
簡單說,JSON使用有類型的鍵值對將信息組織起來,
- YAML
無類型鍵值對,key:value。無論鍵還是值都沒有雙引號的形式,
通過縮進的形式來表達所屬關係,這點和Python很像。
表達並列關係,加上“-”號:
用“|”表示整塊數據,“#”表示註釋:
常用的使用格式:
3. 三種信息標記形式的比較
- XML:用<>標籤來標記信息的表達形式(最早的通用信息標記語言,可擴展性好,但繁瑣)。
- JSON:用有類型的鍵值對來標記信息的表達形式(信息有類型,適合程序處理(js),較XML簡潔)。
- YAML:用無類型的鍵值對來標記信息的表達形式(信息無類型,文本信息比例較高,可讀性好)。
XML實例:可以看出,有效信息比例不高,大部分被標籤佔用。
JSON實例:都需要用雙引號來表達類型。
YAML實例:
三種信息標記形式的比較
- XML:Internet上的信息交互與傳遞。包括HTML也是屬於XML這一類別的。
- JSON:移動應用端和節點的信息通信,無註釋。一般來講,JSON格式用在程序的接口處理的地方。JSON數據在經過傳輸之後,能夠作爲程序代碼一部分,並能被程序直接運行,這樣,JSON中對信息類型的定義才能發揮最大作用。
- YAML:各類系統的配置文件,有註釋易讀。對文本利用率比較高。
4. 總結
文章簡單介紹了信息標記的三種形式,XML、JSON、YAML。這三種信息標記形式各有特點,各自適用不同的範圍。
講完信息標記之後,接着會說說信息提取的一般方式,一點一點深入理解Python爬蟲的深層原理。不僅要會爬蟲,更要懂爬蟲。
才疏學淺,文章如有不當之處,還請多多指教~~ (●′ω`●)