Python 爬蟲教程 1 - 前言

寫在最開始

最近開始慢慢的自學爬蟲,一邊學也一邊想寫點什麼,所以在這裏寫下來,也當是對自己學習過程的一個總結。

什麼是爬蟲

互聯網每天都會產生大量的數據,但是互聯網產生的數據大都是非結構化的數據,無法直接用於分析產生價值,所以需要對這樣一些網頁裏的數據進行抓取,得到有價值的結構化數據。而網絡爬蟲就是這樣一種用於抓取網頁的程序。實際上我們常用的百度,谷歌等搜索引擎就是功能強大的爬蟲。
網絡爬蟲的工作方式比較固定,(1)通過 url 定位網頁,並下載網頁內容(文本);(2)對網頁內容進行分析,定位,得到感興趣的數據;(3)同時從這個網頁中解析出其中感興趣的 url,回到步驟(1);(4)直到達到某種停止條件(沒有更多 url 等原因)。通過這樣的方式,可以將我們的訪問從一個入口延伸到許許多多感興趣的頁面。


流程圖

爬蟲涉及的知識點

網絡爬蟲涉及的內容較多也比較雜,在這裏先對這些內容進行一下大致的介紹。
1. 網頁的組成,網頁本質上是一系列特定格式的文件,瀏覽器通過 url 獲取這些文件並且渲染成我們平時所看到的頁面的樣式。其中包括 html,css,javascript 等內容。
2. 網頁的獲取,整個互聯網是建立在 HTTP 協議上的,所以我們需要熟悉 HTTP 的一些細節,並且能夠通過程序的方式對網頁進行獲取。
3. 網頁的解析,下載到本地的網頁實際是以字符串存儲的,我們所需要做的就是從這個巨大的字符串中獲取感興趣的數據。
4. 有效數據存儲,對於獲取到的數據,需要使其以某種方式保存下來,可以是以文件的形式也可以保存到數據庫裏。這裏需要掌握文件和數據庫的一些知識。
5. 一些額外的內容,包括多線程爬蟲,基於協程的異步爬蟲, url 去重,使用HTTP 代理等。

寫在最後

由於這個教程的名字叫做 python 爬蟲教程,所以主要的關注點會放在如何用 python 編寫爬蟲程序,而其他的相關內容會適當的加以簡介。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章