Python爬蟲入門一之綜述

來源:互聯網
上載者:User

標籤:

    現在,我們已經進入到大資料時代,在對資料進行處理分析時,首要的是需要有資料,而作為資料的一個重要來源則來自於網路爬蟲,鑒於Python語言的簡潔高效,以及對爬蟲技術的大力支援,我們選擇利用Python作為主要程式設計語言。Python版本為2.7.

    本文主要內容轉自:http://cuiqingcai.com/category/technique/python,博主介紹的非常詳細,所以在此打算直接拷貝過來了,也希望更多的人可以藉此學習進步。

    首先解釋一下什麼是爬蟲。爬蟲就是一種按照一定的規則,可以自動的抓取網路資訊的程式或者指令碼。對Python爬蟲的學習,比較重要的模組有Python基礎知識的學習、urllib和urllib2庫的使用、Regex的使用、爬蟲架構Scrapy的學習使用、以及一些更進階的功能,最重要的還是自己動手實踐。

    1、Python基礎知識的學習

    對於基礎知識的學習,之前已經簡單寫過幾篇博文,在這裡再給大家一些入門層級的學習網址,供大家學習。慕課網Python教程http://www.imooc.com/view/177,廖雪峰Python教程http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000,簡明Python教程http://woodpecker.org.cn/abyteofpython_cn/chinese/pr01.html#s01

    2、urllib和urllib2庫的用法

    urllib和urllib2庫是學習Python爬蟲最基本的庫,利用這個庫我們可以得到網頁的內容,並對內容用Regex提取出來分析,得到我們想要的結果。

    3、PythonRegex

    Regex是一種用來匹配字串的強有力的武器。它的設計思想是用一種描述性的語言來給字串定義一個規則,凡是符合規則的字串,我們就認為它“匹配”了,否則,該字串就是不合法的。

    4、爬蟲架構Srapy

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

    HTML,XML來源資料 選擇及提取的內建支援

    提供了一系列在spider之間共用的可複用的過濾器(即Item Loaders),對智能處理爬取資料提供了內建支援。

    通過feed匯出 提供了多格式(JSON、CSV、XML),多儲存後端(FTP、S3、本地檔案系統)的內建支援

    提供了media pipeline,可以自動下載爬取到的資料中的圖片(或者其他資源)

    高擴充性。您可以通過使用signals,設計好的API(中介軟體,extensions,pipelines)來定製實現您的功能

    內建的中介軟體及擴充為下列功能提供了支援:

    ciikies and session處理

    HTTP壓縮

    HTTP認證

    HTTP緩衝

    user-agent類比

    robots.txt

    爬取深度限制

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

    支援根據模板產生爬蟲。在加速爬蟲建立的同時,保持在大型項目中的代碼更為一致。詳細內容請參閱genspider命令

    針對多爬蟲下效能評估。失敗檢測。提供了可擴充的狀態收集工具

    提供互動式shell終端,為您測試XPath運算式,編寫和調試爬蟲提供了極大的方便

    提供System service,簡化在生產環境的部署及運行

    內建Web service是您可以監視及控制您的機器

    內建Telnet終端,可以在Scrapy進程中鉤入Python終端,使您可以查看並且調試爬蟲

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

    支援Sitemaps爬取

    具有緩衝的DNS解析器

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

Python爬蟲入門一之綜述

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.