一、XPath
XPath簡介:
XPath 是一門在 XML 文檔中查找信息的語言。XPath 用於在 XML 文檔中通過元素和屬性進行導航,就好比windows中文件的路徑一樣。XPath 含有超過 100 個內建的函數。這些函數用於字符串值、數值、日期和時間比較、節點和 QName 處理、序列處理、邏輯值等等。XPath在爬蟲的應用中是分析網頁中的信息。
XPath節點:
在 XPath 中,有七種類型的節點:元素、屬性、文本、命名空間、處理指令、註釋以及文檔節點。學習python和c語言的,學過數據結構會更好的理解什麼是節點。各節點的關係就是父、子、兄弟、先輩、後代。
XPath語法:
XPath 使用路徑表達式來選取 XML 文檔中的節點或節點集。節點是通過沿着路徑 (path) 或者步 (steps) 來選取的。基本語法就是路徑表達式,如下:
在節點集可以使用數組、表達式、通配符、多選符。
XPath軸:
軸就是說節點之間的關係。有下面12種。
ancestor 選取當前節點的所有先輩(父、祖父等)。
ancestor-or-self 選取當前節點的所有先輩(父、祖父等)以及當前節點本身。
attribute 選取當前節點的所有屬性。
child 選取當前節點的所有子元素。
descendant 選取當前節點的所有後代元素(子、孫等)。
descendant-or-self 選取當前節點的所有後代元素(子、孫等)以及當前節點本身。
following 選取文檔中當前節點的結束標籤之後的所有節點。
namespace 選取當前節點的所有命名空間節點。
parent 選取當前節點的父節點。
preceding 選取文檔中當前節點的開始標籤之前的所有節點。
preceding-sibling 選取當前節點之前的所有同級節點。
self 選取當前節點。
XPath運算符:
普通的有+、-、*、div、=、!=、<=、>=、>、<、or、and、mod
特別注意的是“|",是計算兩節點集。
二、Json
用於儲存和交換文本信息。
語法和Python的字典很像。
三、HTTP
http狀態碼:
當瀏覽者訪問一個網頁時,瀏覽者的瀏覽器會向網頁所在的服務器發出請求。瀏覽器接收請求後,會向瀏覽者回復一個狀態,也就是http狀態碼。
一共分爲5類,按數字開關分類:1——信息,2——成功,3—— 重定向(需要進一步操作完成請求),4——客戶端錯誤,5——服務端錯誤。
http頭部信息:
http頭部信息由多個頭域組成,頭域格式:域名:域值。
GET:請求方式
Host頭哉:請求資源的Internet的主機和端口號
Use-agent:發出請求的用戶信息。可用來作反爬蟲
Accept:指定用戶接受哪些類型的信息
Accept-Language:指定一種自然語言。
Accept-Encoding:指定可接受的編碼方式
Connection:指定連接狀態是連續還是關閉的
If-Modified-Since:緩存頁面最後修改的時間。