趁著春節,希望能寫乙個小小的網路爬蟲框架。
先定乙個小目標,希望能比較優雅地將某個**上的所有爬下來。
暫時先將這個爬蟲的名字叫做squirrel,小松鼠吧。
爬蟲其實是一種從網際網路上獲取資訊,並且提取我們需要的資訊並且儲存的手段。
網際網路就像一張網,這種網是由乙個個url相互連線的。乙個url往往是對應著一張網頁(page). 各個頁面通過url鏈結成了乙個網狀結構。
那麼我們從乙個頁面出發,分析其中的url,然後再去訪問該url對應的頁面;再分析其中的url,並訪問。如此重複並可以爬遍所有的頁面。
簡單地捋了一下,我們如果需要實現乙隻爬蟲,則需要實現如下幾個功能模組:
url管理器
url管理器應該維護兩個不重複的set。乙個儲存未爬過的url,乙個儲存已經爬過的url。如果我們要將乙個url加入未爬過的url set,那麼這個url必須都不在兩組set中。
網頁解析器
接收頁面內容,從中提取出結構化的資料和url。
儲存器儲存結構化的資料。
下面我們一步一步來認識我們設定的幾個模組需要實現什麼功能。
url管理器主要需要維護兩個集合:
我們來分解url管理器需要實現的功能:
url管理器的實現方式有多種
Python網路爬蟲 一 什麼是爬蟲
網路爬蟲 web crawler 一般被用來採集網路上的資訊,也叫做網路鏟 web scraper 網路蜘蛛 web spider 顧名思義,網路爬蟲就是先爬到要採集的網頁上,然後對資料資訊進行採集。1.了解爬蟲的工作原理 2.http抓取工具 3.高階功能 網際網路最早是作為科研資訊的一種交流方式...
什麼是聚焦網路爬蟲?
聚焦網路爬蟲也叫主題網路爬蟲,顧名思義,聚焦網路爬蟲是按照預先定義好的主題有選擇地進行網頁爬取的一種爬蟲,聚焦網路爬蟲不像通用網路爬蟲一樣將目標資源定位在全網際網路中,而是將爬取的目標網頁定位在與主題相關的頁面中,此時,可以大大節省爬蟲爬取時所需的頻寬資源和伺服器資源。聚焦網路爬蟲主要應用在對特定資...
什麼是爬蟲?
世界上80 的爬蟲是基於python開發的,學好爬蟲技能,可為後續的大資料分析 挖掘 機器學習等提供重要的資料來源。什麼是爬蟲?網路爬蟲 又被稱為網頁蜘蛛,網路機械人,在foaf社群中間,更經常的稱為網頁追逐者 是一種按照一定的規則,自動地抓取全球資訊網資訊的程式或者指令碼。另外一些不常使用的名字還...