我在千鋒Python培訓學習也有一個多月的時間了,因為之前就對爬蟲比較感興趣,通過這幾天對爬蟲簡單的學習,感覺爬蟲的學習就像前端,入門容易,要想深入還是有一定難度的,下面就說說我對爬蟲的簡單認識。
因為Python有很多現成的庫,如果你稍微了解一點HTML和網絡方面的知識,看一下相關庫的示例代碼,會發現扒拉一個網頁到本地多兩行代碼,其中還有一行是import,這里的兩行代碼當然不包括解析數據,解析數據已經是后話了,你首先得把數據抓取下來。可能入門抓的網頁沒有什么反爬蟲策略或者抓取數據量小沒有觸發反爬蟲系統,感覺一下就爬到數據了,好像大部分時間都在解析數據,但是我覺得真正難的是抓取,怎么解析完全看自己實際需要。
大部分人接觸爬蟲一開始都是從基本的靜態爬蟲開始,即不需要登錄就能訪問數據,數據基本不是通過動態加載的。而往深層次說,很多數據是需要登錄之后才能爬取的,很多數據是通過ajax請求的,那么你需要分析清楚哪個請求/提交了哪些數據,請求/提交的機制是什么,這就要求你對http協議的認識比較深刻。
另一大塊就是如何應對服務器端的反爬蟲,拿簡單的來說,別人的數據希望用戶通過瀏覽器正常訪問,而非被“貪心又猥瑣”的爬蟲來訪問,所以服務器端都會想方設法辨別你是正常用戶還是爬蟲,比如驗證碼就是一個令人很頭疼的問題,特別是一些變態的驗證碼,比如12306的驗證碼。此外爬蟲爬取的效率也是一個問題,所以爬取數據量大的時候,你不可能僅僅用自己的小筆記本,而要用到分布式爬蟲,利用多臺計算機來完成任務。
總的來說,通過在千鋒Python培訓對爬蟲知識點的學習,讓我對爬蟲有了深入的認識,對于數據量大的分布式爬蟲這些雖然還沒學,但已經很期待下周的課程了,希望自己能在爬蟲這塊有好的學習和發展。未來需要靠自己的雙手去爭取,所以接下來我一定會加努力學習的。
相關文章
了解千鋒動態
關注千鋒教育服務號
掃一掃快速進入
千鋒移動端頁面
掃碼匿名提建議
直達CEO信箱