webmagic是一個開源的(de)(de)Java垂(chui)直爬蟲(chong)(chong)框架,目(mu)標是簡化爬蟲(chong)(chong)的(de)(de)開發(fa)流程,讓開發(fa)者(zhe)專(zhuan)注于(yu)邏輯功(gong)能(neng)的(de)(de)開發(fa)。webmagic采用(yong)完全模塊化的(de)(de)設計,功(gong)能(neng)覆蓋整個爬蟲(chong)(chong)的(de)(de)生命周期(鏈(lian)接提取、頁面下載、內容抽取、持久化),支(zhi)持多線程抓(zhua)取,分布式抓(zhua)取,并(bing)支(zhi)持自動重試、自定(ding)義UA/cookie等功(gong)能(neng)。
webmagic包(bao)含頁面(mian)抽取功能,開發(fa)者可(ke)以使用css selector、xpath和(he)(he)正則表達(da)式進行鏈(lian)接和(he)(he)內容的提取,支持(chi)多個選擇器鏈(lian)式調用。
webmagic主要包括(kuo)兩個包:
webmagic核心部分,只(zhi)包(bao)含爬蟲基本模塊和(he)基本抽取器(qi)。webmagic-core的(de)目標是(shi)成為網頁(ye)爬蟲的(de)一個教科書般的(de)實現(xian)。
webmagic的(de)擴展模塊,提(ti)供一些更方便的(de)編寫爬(pa)蟲的(de)工具。包括(kuo)注解(jie)格(ge)式(shi)定義爬(pa)蟲、JSON、分布式(shi)等支(zhi)持。
webmagic還包含(han)兩個(ge)可用的擴(kuo)展包,因為這兩個(ge)包都依賴了比較重量級的工具,所以從主要包中抽離(li)出來,這些包需要下載源碼(ma)后自己編譯:
webmagic-saxon
webmagic與Saxon結合的(de)模塊(kuai)。Saxon是(shi)一個(ge)XPath、XSLT的(de)解析(xi)工具,webmagic依賴Saxon來進行XPath2.0語法解析(xi)支持。
webmagic-selenium
webmagic與(yu)Selenium結合(he)的(de)模塊(kuai)。Selenium是一個(ge)模擬瀏覽器進行(xing)(xing)頁面渲染的(de)工具,webmagic依賴Selenium進行(xing)(xing)動態頁面的(de)抓取。
在項目(mu)中(zhong),你可(ke)以根據(ju)需要依(yi)賴不同的(de)包。
不使用maven
在(zai)(zai)項目的lib目錄下,有依賴(lai)的所有jar包,直接在(zai)(zai)IDE里import即可。