回顧一個月的爬蟲學習

學習爬蟲湊湊合合也將近一個月了吧,從一開始的一無所知(除了Python)到現在可以爬取一些網站的數據,進步也是能夠看到的。作為一個回顧,我在這裡把爬蟲學習的路徑再理一遍,也供想要學習爬蟲的夥伴參考參考。

首先學習爬蟲沒有知乎上大家所說的那樣簡單,或許我們都有一個誤解,聽到別人所謂的簡單然後自己也以為如此,這實際上是很天真的(自個先打臉了( ̄ε(# ̄))。現在看來,最基本的爬蟲包含(但不限於)下面幾個知識塊:

0.網頁三劍客(HTML、JS、CSS)+ Python基礎

1.HTTP協議(如何獲取網頁信息)

通過urllib、requests庫可以簡化請求網頁的過程

2.篩選方式+解析庫(用於從網頁信息中篩選出需要的內容)

常用解析庫包含BeautifulSoup,lxml等

篩選方式包含正則、Xpath、CSS Select等

3.格式化信息(如何把獲取到的信息加工成便與查看或儲存的格式)

需要掌握列表、字元串、字典等數據結構(包含屬性和方法的熟練運用)

一些高級的Python特性,比如生成器等

4.儲存信息

包含兩大類:文件存儲,資料庫存儲

文件存儲又包含TXT文件、CSV文件、Json文件,需要熟悉這幾種文件的讀寫方式

資料庫存儲包含關係型和非關係型,其複雜度高於文件存儲,掌握更費時,具體有:

關係型:MySQL

非關係型:MonggoDB、Redis

回頭來看,除了Python語言本身之外,上面的任一一塊知識都是很「硬」的(Python也很重要),需要花上大把的時間才能熟練掌握。現在看來我是用了較短的時間,通過小項目熟悉了寫爬蟲需要用到的知識塊,做到了心中有數,好處在於心裡有底了,減少了茫然,但麻煩就是許多知識掌握的還比較薄弱。不過再怎麼說,這也證明了項目指引學習的方式是一種有效的入門手段。

最後再感慨下,安排好各個知識的學習次序,遇到問題知道怎樣解決而不是一下子懵逼,能夠在紛繁的知識中做到有條不紊的漸進,這些都是作為一個CS-learner的必要但不容易習得的自我修養啊。學習之路還很漫長,還需努力(? ?_?)?


推薦閱讀:

TAG:Python | python爬蟲 | 爬蟲計算機網路 |