Python爬蟲入門一之綜述

大家好哈,最近博主在學習Python,學習期間也遇到一些問題,獲得了一些經(jīng)驗,在此將自己的學習系統(tǒng)地整理下來,如果大家有興趣學習爬蟲的話,可以將這些文章作為參考,也歡迎大家一共分享學習經(jīng)驗。

Python版本:2.7,Python 3請另尋其他博文。

首先爬蟲是什么?

網(wǎng)絡爬蟲(又被稱為網(wǎng)頁蜘蛛,網(wǎng)絡機器人,在FOAF社區(qū)中間,更經(jīng)常的稱為網(wǎng)頁追逐者),是一種按照一定的規(guī)則,自動的抓取萬維網(wǎng)信息的程序或者腳本。

根據(jù)我的經(jīng)驗,要學習Python爬蟲,我們要學習的共有以下幾點:

Python基礎知識

Python中urllib和urllib2庫的用法

Python正則表達式

Python爬蟲框架Scrapy

Python爬蟲更高級的功能

1.Python基礎學習

首先,我們要用Python寫爬蟲,肯定要了解Python的基礎吧,萬丈高樓平地起,不能忘啦那地基,哈哈,那么我就分享一下自己曾經(jīng)看過的一些Python教程,小伙伴們可以作為參考。

1) 慕課網(wǎng)Python教程

曾經(jīng)有一些基礎的語法是在慕課網(wǎng)上看的,上面附有一些練習,學習完之后可以作為練習,感覺效果還是蠻不錯的,不過稍微遺憾的是內(nèi)容基本上都是最基礎的,入門開始的話,就這個吧

學習網(wǎng)址:慕課網(wǎng)Python教程

2) 廖雪峰Python教程

后來,我發(fā)現(xiàn)了廖老師的Python教程,講的那是非常通俗易懂哪,感覺也是非常不錯,大家如果想進一步了解Python就看一下這個吧。

學習網(wǎng)址:廖雪峰Python教程

3) 簡明Python教程

還有一個我看過的,簡明Python教程,感覺講的也不錯

學習網(wǎng)址:簡明Python教程

4) 汪海的實驗室

這是我的本科實驗室學長,入門的時候參考的他的文章,自己重新做了總結,后來這些系列文章又在他的基礎上增加了一些內(nèi)容。

學習網(wǎng)址:汪海的實驗室

2.Python urllib和urllib2 庫的用法

urllib和urllib2庫是學習Python爬蟲最基本的庫,利用這個庫我們可以得到網(wǎng)頁的內(nèi)容,并對內(nèi)容用正則表達式提取分析,得到我們想要的結果。這個在學習過程中我會和大家分享的。

3.Python 正則表達式

Python正則表達式是一種用來匹配字符串的強有力的武器。它的設計思想是用一種描述性的語言來給字符串定義一個規(guī)則,凡是符合規(guī)則的字符串,我們就認為它“匹配”了,否則,該字符串就是不合法的。這個在后面的博文會分享的。

4.爬蟲框架Scrapy

如果你是一個Python高手,基本的爬蟲知識都已經(jīng)掌握了,那么就尋覓一下Python框架吧,我選擇的框架是Scrapy框架。這個框架有什么強大的功能呢?下面是它的官方介紹:

HTML, XML源數(shù)據(jù) 選擇及提取 的內(nèi)置支持

提供了一系列在spider之間共享的可復用的過濾器(即 Item Loaders),對智能處理爬取數(shù)據(jù)提供了內(nèi)置支持。

通過 feed導出 提供了多格式(JSON、CSV、XML),多存儲后端(FTP、S3、本地文件系統(tǒng))的內(nèi)置支持

提供了media pipeline,可以 自動下載 爬取到的數(shù)據(jù)中的圖片(或者其他資源)。

高擴展性。您可以通過使用 signals ,設計好的API(中間件, extensions, pipelines)來定制實現(xiàn)您的功能。

內(nèi)置的中間件及擴展為下列功能提供了支持:

cookies and session 處理

HTTP 壓縮

HTTP 認證

HTTP 緩存

user-agent模擬

robots.txt

爬取深度限制

針對非英語語系中不標準或者錯誤的編碼聲明, 提供了自動檢測以及健壯的編碼支持。

支持根據(jù)模板生成爬蟲。在加速爬蟲創(chuàng)建的同時,保持在大型項目中的代碼更為一致。詳細內(nèi)容請參閱 genspider 命令。

針對多爬蟲下性能評估、失敗檢測,提供了可擴展的 狀態(tài)收集工具 。

提供 交互式shell終端 , 為您測試XPath表達式,編寫和調(diào)試爬蟲提供了極大的方便

提供 System service, 簡化在生產(chǎn)環(huán)境的部署及運行

內(nèi)置 Web service, 使您可以監(jiān)視及控制您的機器

內(nèi)置 Telnet終端 ,通過在Scrapy進程中鉤入Python終端,使您可以查看并且調(diào)試爬蟲

Logging 為您在爬取過程中捕捉錯誤提供了方便

支持 Sitemaps 爬取

具有緩存的DNS解析器

官方文檔:http://doc.scrapy.org/en/latest/

等我們掌握了基礎的知識,再用這個 Scrapy 框架吧!

扯了這么多,好像沒多少有用的東西額,那就不扯啦!

下面開始我們正式進入爬蟲之旅吧!

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 原文地址:靜覓 ? Python爬蟲入門一之綜述 大家好哈,最近博主在學習Python,學習期間也遇到一些問題,獲...
    IT程序獅閱讀 635評論 0 4
  • Python版本:2.7,Python 3請另尋其他博文。 首先爬蟲是什么? 網(wǎng)絡爬蟲(又被稱為網(wǎng)頁蜘蛛,網(wǎng)絡機器...
    謝鴻威閱讀 679評論 2 2
  • 大家好哈,最近博主在學習Python,學習期間也遇到一些問題,獲得了一些經(jīng)驗,在此將自己的學習系統(tǒng)地整理下來,如果...
    xmsumi閱讀 394評論 0 0
  • 昨天又遇到一個喜歡拖延癥話題的朋友。終于碰到知音了 我們甚至在以下這個話題上都一樣一樣的:“ 唉 拖延癥主題的沙龍...
    Chris的另一個世界閱讀 438評論 0 0
  • 本文章轉載于搜狗測試 本文轉自簡書,是作者翻譯Google I/0 2015中關于測試的codelab。 目錄 1...
    夜境閱讀 1,266評論 1 0

友情鏈接更多精彩內(nèi)容