你是不是在為想收集數據而不知道如何收集而著急? 你是不是在為想學習爬蟲而找不到一個專門為小白寫的教程而煩惱? Bingo! 你沒有看錯,這就是專門面向小白學習爬蟲而寫的!我會採用實例的方式,把每個部分都跟實際的例子結合起來幫助小伙伴兒們理解。最後再寫幾個實戰的例子。 我們使用Python來寫爬蟲,一 ...
你是不是在為想收集數據而不知道如何收集而著急?
你是不是在為想學習爬蟲而找不到一個專門為小白寫的教程而煩惱?
Bingo! 你沒有看錯,這就是專門面向小白學習爬蟲而寫的!我會採用實例的方式,把每個部分都跟實際的例子結合起來幫助小伙伴兒們理解。最後再寫幾個實戰的例子。
我們使用Python來寫爬蟲,一方面因為Python是一個特別適合變成入門的語言,另一方面,Python也有很多爬蟲相關的工具包,能夠簡單快速的開發出我們的小爬蟲。
本系列採用Python3.5版本,畢竟2.7會慢慢退出歷史舞臺~
那麼,接下來,你得知道什麼是爬蟲、爬蟲從哪裡爬取數據的,以及,學習爬蟲都要學習哪些東西。
什麼是爬蟲
來看看百度百科是如何定義的
網路爬蟲(又被稱為網頁蜘蛛,網路機器人,在FOAF社區中間,更經常的稱為網頁追逐者),是一種按照一定的規則,自動地抓取萬維網信息的程式或者腳本。另外一些不常使用的名字還有螞蟻、自動索引、模擬程式或者蠕蟲。
什麼?沒看懂?沒關係,我來給你解釋一下
打開一個網頁,裡面有網頁內容吧,想象一下,有個工具,可以把網頁上的內容獲取下來,存到你想要的地方,這個工具就是我們今天的主角:爬蟲。
這樣是不是更清晰了呢?
既然瞭解了爬蟲是什麼,那麼爬蟲是如何爬取數據的呢?
爬蟲是哪裡爬取數據的
打開瀏覽器(強烈建議谷歌瀏覽器),找到瀏覽器地址欄,然後在里敲music.163.com,你會看到網頁內容。
欸,圖片中間那倆人在幹嘛?(單身狗請主動防禦,這是誤傷,這真的是誤傷!)
滑鼠在頁面上點擊右鍵,然後點擊view page source。看到這些文字了嗎?這才是網頁最赤果果的樣子。
其實所有的網頁都是HTML代碼,只不過瀏覽器將這些代碼解析成了上面的網頁,我們的小爬蟲抓取的其實就是HTML代碼中的文本啦。
這不合理啊,難不成那些圖片也是文本?
恭喜你,答對了。回到瀏覽器中有圖的哪個tab頁,滑鼠右鍵,點擊Inspect。會彈出一個面板,點擊板左上角的箭頭,點擊虐狗圖片,你會看到下麵有紅圈圈的地方,是圖片的網路地址。圖片可以通過該地址保存到本地哦。
你猜的沒錯,我們的小爬蟲抓取的正是網頁中的數據,你要知道你想要抓取什麼數據,你的目標網站是什麼,才可以把想法變成現實的哦。你不能說,我想要這個這個,還有這個,然後數據就自動來了。。。(是不是讓你想起了你的導師或老闆?)
學習爬蟲的必備知識
大家要先對以下內容有一定的瞭解再來學習爬蟲哦,磨刀不誤砍柴工
HTML
這個能夠幫助你瞭解網頁的結構,內容等。可以參考W3School的教程。Python
如果有編程基礎的小伙伴兒,推薦看一個廖雪峰的Python教程就夠了
沒有編程基礎的小伙伴,推薦看看視頻教程(網易雲課堂搜Python),然後再結合廖雪峰的教程,雙管齊下。
其實知乎上總結的已經非常好了,我就不多嘮叨了。知乎-如何系統的自學PythonTCP/IP協議,HTTP協議
這些知識能夠讓你瞭解在網路請求和網路傳輸上的基本原理,瞭解就行,能夠幫助今後寫爬蟲的時候理解爬蟲的邏輯。
廖雪峰Python教程里也有簡單介紹,可以參考:TCP/IP簡介,HTTP協議
想更深入學習的小伙伴兒可以去網上多搜搜相關的書籍哦
OK, 下一篇就開始我們的實戰啦