網路爬蟲是指在互聯網上自動爬取網站內容資訊的程式,也被稱作網路蜘蛛或網路機器人,大型的爬蟲程式被廣泛應用于搜索引擎、資料挖掘等領域,個人用戶或企業也可以利用爬蟲收集對自身有價值的資料,
一個網路爬蟲程式的基本執行流程可以總結三個程序:請求資料, 決議資料, 保存資料
請求資料
請求的資料除了普通的HTML之外,還有 json 資料、字串資料、圖片、視頻、音頻等,
決議資料
當一個資料下載完成后,對資料中的內容進行分析,并提取出需要的資料,提取到的資料可以以多種形式保存起來,資料的格式有非常多種,常見的有csv、json、pickle等
保存資料
最后將資料以某種格式(CSV、JSON)寫入檔案中,或存盤到資料庫(MySQL、MongoDB)中,同時保存為一種或者多種,
通常,我們想要獲取的資料并不只在一個頁面中,而是分布在多個頁面中,這些頁面彼此聯系,一個頁面中可能包含一個或多個到其他頁面的鏈接,提取完當前頁面中的資料后,還要把頁面中的某些鏈接也提取出來,然后對鏈接頁面進行爬取,
設計爬蟲程式時,還要考慮防止重復爬取相同頁面(URL去重)、網頁搜索策略(深度優先或廣度優先等)、爬蟲訪問邊界限定等一系列問題,
從頭開發一個爬蟲程式是一項煩瑣的作業,為了避免因制造輪子而消耗大量時間,在實際應用中我們可以選擇使用一些優秀的爬蟲框架,使用框架可以降低開發成本,提高程式質量,讓我們能夠專注于業務邏輯(爬取有價值的資料)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/266222.html
標籤:Python
