Python中好用的爬蟲框架(私信小編001 、002 、003 、007任何一個(gè)即可獲取Python學(xué)習(xí)資料)
一般比價(jià)小型的爬蟲需求,我是直接使用requests庫(kù) bs4就解決了,再麻煩點(diǎn)就使用selenium解決js的異步 加載問(wèn)題。相對(duì)比較大型的需求才使用框架,主要是便于管理以及擴(kuò)展等。
1.Scrapy
Scrapy是一個(gè)為了爬取網(wǎng)站數(shù)據(jù),提取結(jié)構(gòu)性數(shù)據(jù)而編寫的應(yīng)用框架。 可以應(yīng)用在包括數(shù)據(jù)挖掘,信息處理或存儲(chǔ)歷史數(shù)據(jù)等一系列的程序中。
特性:
快速入門
安裝
pip install scrapy
創(chuàng)建項(xiàng)目
寫爬蟲
運(yùn)行
scrapy crawl dmoz
這里就簡(jiǎn)單介紹一下,后面有時(shí)間詳細(xì)寫一些關(guān)于scrapy的文章,我的很多爬蟲的數(shù)據(jù)都是scrapy基礎(chǔ)上實(shí)現(xiàn)的。
2.PySpider
PySpider:一個(gè)國(guó)人編寫的強(qiáng)大的網(wǎng)絡(luò)爬蟲系統(tǒng)并帶有強(qiáng)大的WebUI。采用Python語(yǔ)言編寫,分布式架構(gòu),支持多種數(shù)據(jù)庫(kù)后端,強(qiáng)大的WebUI支持腳本編輯器,任務(wù)監(jiān)視器,項(xiàng)目管理器以及結(jié)果查看器。
示例
代開web界面的編輯輸入代碼即可
3.Crawley
Crawley可以高速爬取對(duì)應(yīng)網(wǎng)站的內(nèi)容,支持關(guān)系和非關(guān)系數(shù)據(jù)庫(kù),數(shù)據(jù)可以導(dǎo)出為JSON、XML等。
創(chuàng)建project
寫Python爬蟲邏輯
配置
運(yùn)行
~$ crawley run
4.Portia
Portia是一個(gè)開源可視化爬蟲工具,可讓您在不需要任何編程知識(shí)的情況下爬取網(wǎng)站!簡(jiǎn)單地注釋您感興趣的頁(yè)面,Portia將創(chuàng)建一個(gè)蜘蛛來(lái)從類似的頁(yè)面提取數(shù)據(jù)。
5.Newspaper
Newspaper可以用來(lái)提取新聞、文章和內(nèi)容分析。使用多線程,支持10多種語(yǔ)言等。作者從requests庫(kù)的簡(jiǎn)潔與強(qiáng)大得到靈感,使用python開發(fā)的可用于提取文章內(nèi)容的程序。
支持10多種語(yǔ)言并且所有的都是unicode編碼。
示例
6.Beautiful Soup
Beautiful Soup 是一個(gè)可以從HTML或XML文件中提取數(shù)據(jù)的Python庫(kù).它能夠通過(guò)你喜歡的轉(zhuǎn)換器實(shí)現(xiàn)慣用的文檔導(dǎo)航,查找,修改文檔的方式.Beautiful Soup會(huì)幫你節(jié)省數(shù)小時(shí)甚至數(shù)天的工作時(shí)間。這個(gè)我是使用的特別頻繁的。在獲取html元素,都是bs4完成的。
示例:
7.Grab
Grab是一個(gè)用于構(gòu)建Web刮板的Python框架。借助Grab,您可以構(gòu)建各種復(fù)雜的網(wǎng)頁(yè)抓取工具,從簡(jiǎn)單的5行腳本到處理數(shù)百萬(wàn)個(gè)網(wǎng)頁(yè)的復(fù)雜異步網(wǎng)站抓取工具。Grab提供一個(gè)API用于執(zhí)行網(wǎng)絡(luò)請(qǐng)求和處理接收到的內(nèi)容,例如與HTML文檔的DOM樹進(jìn)行交互。
8.Cola
Cola是一個(gè)分布式的爬蟲框架,對(duì)于用戶來(lái)說(shuō),只需編寫幾個(gè)特定的函數(shù),而無(wú)需關(guān)注分布式運(yùn)行的細(xì)節(jié)。任務(wù)會(huì)自動(dòng)分配到多臺(tái)機(jī)器上,整個(gè)過(guò)程對(duì)用戶是透明的。
案例
10 .Python-goose框架
Python-goose框架可提取的信息包括:
用法示例
聯(lián)系客服