python爬蟲---初識爬蟲

  咱們開始來談談python的爬蟲。html

1.什麼是爬蟲:

  網絡爬蟲是一種按照必定的規則,自動地抓取萬維網信息的程序或者腳本。另一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。互聯網猶如一個大蜘蛛網,咱們的爬蟲就猶如一個蜘蛛,當在互聯網遇到所須要的資源,咱們就會爬取下來,即爲爬蟲是一個請求網站而且提取數據的自動化程序。python

2.下面咱們來提到兩個名詞:

  1)請求,request即爲咱們的請求,當咱們在瀏覽器內輸入網址,敲擊回車時,這時瀏覽器就會發送消息給該網址所在的服務器,這個過程叫作HTTP Requestajax

  2)響應,response即爲咱們的響應,服務器在接收到瀏覽器發送的消息後,可以根據瀏覽器發送消息的內容作出相應的處理,而後把消息回傳給瀏覽器。這個過程就作HTTP Response。瀏覽器收到服務器的Response信息後,會對信息進行處理,而後展現。redis

3.Request中包含什麼?

  1)請求方式,請求方式主要包含get,post,另外還有put,head,delete,options等,但咱們經常使用的、常見的仍是get和post請求。數據庫

    get請求:get請求方式全部的參數都包含在URL地址裏,get請求能夠直接在瀏覽器地址欄內輸入URL地址,而後直接訪問。瀏覽器

    post請求:比get方式多包含一個formdata數據,且參數沒有在URL地址內。不能夠直接在地址欄訪問,須要構造一個form表單,進行提交訪問。安全

    同時post請求全部參數不顯示地址欄內,相對於get請求來講更安全。服務器

  2)請求URL,URL全稱統一資源定位符,如一個網頁文檔、一張圖片、一個視頻等均可以用URL惟一來肯定。markdown

  3)請求頭,包含請求時的頭部信息,如User-Agent、Host、Cookies等信息,請求頭是一個很重要的參數,在不少爬蟲裏須要設置請求頭信息,網絡

    通常權限驗證,瀏覽器類型等信息,以下圖所示:

    

  4)請求體,請求時額外攜帶的數據,如表單提交時的表單數據,通常來講get方式請求時,都沒有請求體。

4.Response中包含什麼?

  1)響應狀態,有多種響應狀態,如200表明成功,404找不到頁面,500服務器錯誤

    擴展:

      -1xx :報告的 -請求被接收到,繼續處理

      -2xx :成功 - 被成功地接收(received),理解(understood),接受(accepted)的動做 。

      -3xx :重發 - 爲了完成請求必須採起進一步的動做。

      -4xx :客戶端出錯 - 請求包括錯的語法或不能被知足。

      -5xx :服務器出錯 - 服務器沒法完成顯然有效的請求。

  2)響應頭,如內容類型、內容長度、服務器信息、設置Cookie等等信息。如圖所示:

    

  3)響應體,最主要的部分,包含了請求資源的內容,如網頁HTML,圖片,二進制數據(視頻,圖片等)等信息。

    咱們爬取的數據大部分就是從這個部分獲取的

5,咱們所須要的環境和資源

  1)python環境,最好是python3,python2在2020年就再也不維護了,語法仍是有必定差別的,我建議使用python3。

  2)redis,mongo分關係型數據庫,安裝過程自行百度。(後期會有專門的博客來講明講解非關係型數據庫)。

  3)scrapy環境,pip install scrapy便可安裝。

  4)Urllib庫,Requests庫,BeautifulSoup庫,PyQuery,Selenium和與其相關聯的環境配置(後面咱們會逐個來講明每個庫和其操做使用方法)。

總結:爬蟲是一個請求網站而且提取數據的自動化程序。有的是經過原生html標籤就能夠獲取到數據,則有的須要經過解析ajax請求來取得數據。

#×××和學習資料。

python爬蟲---初識爬蟲

相關文章
相關標籤/搜索