隨著網路的快速發展,越來越多的數據充斥著這個時代。而取得和處理資料就成為我們生活中不可或缺的部分,爬蟲也是應運而生。
眾多語言都能進行爬蟲,但基於python的爬蟲顯得更加簡潔,方便。爬蟲也成了python語言中不可或缺的一部分。
本篇講解的是什麼是爬蟲和爬蟲的基本流程的介紹,下一期將進一步深入了解爬蟲的基本流程,Request和Response。
什麼是爬蟲?
爬蟲即網路爬蟲,英文是Web Spider。翻譯過來就是網路上爬行的蜘蛛,如果把網路看成一張大網,那麼爬蟲就是在大網上爬來爬去的蜘蛛,碰到想要的食物,就把他抓取出來。
我們在瀏覽器中輸入一個網址,敲擊回車,看到網站的頁面資訊。這就是瀏覽器請求了網站的伺服器,取得到網路資源。那麼,爬蟲也相當於模擬瀏覽器發送請求,取得到HTML程式碼。 HTML程式碼裡通常包含了標籤和文字訊息,我們就從中提取到我們想要的資訊。
通常爬蟲是從某個網站的某個頁面開始,爬取這個頁面的內容,找到網頁中的其他連結位址,然後從這個位址爬到下一個頁面,這樣一直不停的爬下去,進去批次的抓取資訊。那麼,我們可以看出網路爬蟲就是一個不停爬取網頁抓取資訊的程式。
爬蟲的基本流程:
#1.發起請求:
透過HTTP庫向目標網站發起請求,即發送一個Request,請求可以包含額外的headers等訊息,然後等待伺服器回應。這個要求的過程就像我們打開瀏覽器,在瀏覽器網址列輸入網址:www.baidu.com,然後點擊回車。這個過程其實等於瀏覽器作為一個瀏覽的客戶端,向伺服器端發送了 一次請求。
2.取得回應內容:
如果伺服器能正常回應,我們會得到一個Response,Response的內容就是所要取得的內容,類型可能有HTML、Json字串,二進位資料(圖片,影片等)等類型。這個過程就是伺服器接收客戶端的請求,進過解析傳送給瀏覽器的網頁HTML檔案。
3.解析內容:
得到的內容可能是HTML,可以使用正規表示式,網頁解析庫來解析。也可能是Json,可以直接轉為Json物件解析。可能是二進位數據,可以做保存或進一步處理。這一步相當於瀏覽器把伺服器端的檔案取得到本地,再進行解釋並且展現出來。
4.儲存資料:
儲存的方式可以是把資料存為文本,也可以把資料儲存到資料庫,或儲存為特定的jpg,mp4 等格式的檔案。這就相當於我們在瀏覽網頁時,下載了網頁上的圖片或影片。
以上是什麼是爬蟲和爬蟲的基本流程的詳細內容。更多資訊請關注PHP中文網其他相關文章!