十個Python爬蟲武器庫示例,十個爬蟲框架,十種實現爬蟲的方法!


 

 

通常比價小型的爬蟲需求,我是直接使用requests庫 + bs4就解決了,再麻煩點就使用selenium解決js的異步 加載問題。相對比較大型的需求才使用框架,主要是便於管理以及擴展等。html

1.Scrapypython

Scrapy是一個爲了爬取網站數據,提取結構性數據而編寫的應用框架。 能夠應用在包括數據挖掘,信息處理或存儲歷史數據等一系列的程序中。web

 

快速入門數據庫

安裝編程

pip install scrapy後端

建立項目網絡

 

寫爬蟲多線程

 

運行架構

scrapy crawl dmoz框架

這裏就簡單介紹一下,後面有時間詳細寫一些關於scrapy的文章,個人不少爬蟲的數據都是scrapy基礎上實現的。

2.PySpider

PySpider:一個國人編寫的強大的網絡爬蟲系統並帶有強大的WebUI。採用Python語言編寫,分佈式架構,支持多種數據庫後端,強大的WebUI支持腳本編輯器,任務監視器,項目管理器以及結果查看器。

 

python 腳本控制,能夠用任何你喜歡的html解析包(內置 pyquery)

WEB 界面編寫調試腳本,起停腳本,監控執行狀態,查看活動歷史,獲取結果產出

數據存儲支持MySQL, MongoDB, Redis, SQLite, Elasticsearch; PostgreSQL 及 SQLAlchemy

 

示例

代開web界面的編輯輸入代碼便可

 

3.Crawley

Crawley能夠高速爬取對應網站的內容,支持關係和非關係數據庫,數據能夠導出爲JSON、XML等。

 

建立project

 

寫Python爬蟲邏輯

 

配置

 

運行

~$ crawley run

4.Portia

Portia是一個開源可視化爬蟲工具,可以讓您在不須要任何編程知識的狀況下爬取網站!簡單地註釋您感興趣的頁面,Portia將建立一個蜘蛛來從相似的頁面提取數據。

 

5.Newspaper

Newspaper能夠用來提取新聞、文章和內容分析。使用多線程,支持10多種語言等。做者從requests庫的簡潔與強大獲得靈感,使用python開發的可用於提取文章內容的程序。

支持10多種語言而且全部的都是unicode編碼。

示例

 

6.Beautiful Soup

Beautiful Soup 是一個能夠從HTML或XML文件中提取數據的Python庫.它可以經過你喜歡的轉換器實現慣用的文檔導航,查找,修改文檔的方式.Beautiful Soup會幫你節省數小時甚至數天的工做時間。這個我是使用的特別頻繁的。在獲取html元素,都是bs4完成的。

 

示例:

 

7.Grab

Grab是一個用於構建Web刮板的Python框架。藉助Grab,您能夠構建各類複雜的網頁抓取工具,從簡單的5行腳本處處理數百萬個網頁的複雜異步網站抓取工具。Grab提供一個API用於執行網絡請求和處理接收到的內容,例如與HTML文檔的DOM樹進行交互。

8.Cola

Cola是一個分佈式的爬蟲框架,對於用戶來講,只需編寫幾個特定的函數,而無需關注分佈式運行的細節。任務會自動分配到多臺機器上,整個過程對用戶是透明的。

 

案例

 

10 .Python-goose框架

Python-goose框架可提取的信息包括:

 

用法示例
---------------------

相關文章
相關標籤/搜索