国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

爬蟲框架WebMagic源碼分析之Selector

dongxiawu / 1089人閱讀

摘要:主要用于選擇器抽象類,實現類前面說的兩個接口,主要用于選擇器繼承。多個選擇的情形,每個選擇器各自獨立選擇,將所有結果合并。抽象類,定義了一些模板方法。這部分源碼就不做分析了。這里需要提到的一點是返回的不支持選擇,返回的對象支持選擇。

1、Selector部分:
接口:
Selector:定義了根據字符串選擇單個元素和選擇多個元素的方法。
ElementSelector:定義了根據jsoup element選擇單個、多個元素的方法。主要用于CSS、Xpath選擇器.

抽象類:
BaseElementSelector,實現類前面說的兩個接口,主要用于CSS、Xpath選擇器繼承。模板化接口方法,并定義了一些選擇元素的方法由子類實現。

實現類:
CssSelector:Css選擇器的實現類,繼承BaseElementSelector。基本實現都是基于jsoup的css選擇接口。
XpathSelector:xpath選擇器的實現類,繼承BaseElementSelector。基本實現都是采用作者自己基于jsoup實現的xsoup的相關接口。
RegexSelector:正則表達式選擇器的實現類,僅實現了Selector接口。
JsonPathSelector:基于jayway/JsonPath path選擇器。
ReplaceSelector:基于正則替換的選擇器
SmartContentSelector:咱不明白其用途,被官方打上了實驗性標記。
OrSelector:多個選擇的情形,每個選擇器各自獨立選擇,將所有結果合并。
AndSelector:多個選擇的情形,流式管道選擇,前一個選擇的結果作為后一個選擇的輸入。

2、Selectable部分
接口:Selectable :定義了一系列鏈式api調用方式,支持xpath,css,regex,jsonPath選擇器,以及一些便利方法,如links獲取該選擇器下的全部鏈接。

抽象類:AbstractSelectable,定義了一些模板方法。

實現類HtmlNode、PlainText、Html(繼承自HtmlNode)、Json(繼承自PlainText)等。

這部分源碼就不做分析了。

這里需要提到的一點是:
Page.getHtml()返回的Html不支持JsonPath選擇,Page.getJson()返回的Json對象支持JsonPath選擇。

選擇器部分到此結束吧。

下篇主題待定。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/66878.html

相關文章

  • 爬蟲框架WebMagic源碼分析系列目錄

    摘要:爬蟲框架源碼分析之爬蟲框架源碼分析之爬蟲框架源碼分析之爬蟲框架源碼分析之爬蟲框架源碼分析之之進階 爬蟲框架Webmagic源碼分析之Spider爬蟲框架WebMagic源碼分析之Scheduler爬蟲框架WebMagic源碼分析之Downloader爬蟲框架WebMagic源碼分析之Selector爬蟲框架WebMagic源碼分析之SeleniumWebMagic之Spider進階

    wayneli 評論0 收藏0
  • 爬蟲框架WebMagic源碼分析Selenium

    摘要:有一個模塊其中實現了一個。但是感覺靈活性不大。接口如下它會獲得一個實例,你可以在里面進行任意的操作。本部分到此結束。 webmagic有一個selenium模塊,其中實現了一個SeleniumDownloader。但是感覺靈活性不大。所以我就自己參考實現了一個。 首先是WebDriverPool用來管理WebDriver池: import java.util.ArrayList; im...

    MarvinZhang 評論0 收藏0
  • 爬蟲框架Webmagic源碼分析Spider

    摘要:獲取正在運行的線程數,用于狀態(tài)監(jiān)控。之后初始化組件主要是初始化線程池將到中,初始化開始時間等。如果線程池中運行線程數量為,并且默認,那么就停止退出,結束爬蟲。 本系列文章,針對Webmagic 0.6.1版本 一個普通爬蟲啟動代碼 public static void main(String[] args) { Spider.create(new GithubRepoPageP...

    鄒立鵬 評論0 收藏0
  • 爬蟲框架WebMagic源碼分析Scheduler

    摘要:包主要實現類,這是一個抽象類,實現了通用的模板方法,并在方法內部判斷錯誤重試去重處理等。重置重復檢查就是清空,獲取請求總數也就是獲取的。至于請求總數統計,就是返回中維護的的大小。 Scheduler是Webmagic中的url調度器,負責從Spider處理收集(push)需要抓取的url(Page的targetRequests)、并poll出將要被處理的url給Spider,同時還負責...

    TIGERB 評論0 收藏0
  • 優(yōu)雅的使用WebMagic框架寫Java爬蟲

    摘要:優(yōu)雅的使用框架,爬取唐詩別苑網的詩人詩歌數據同時在幾種動態(tài)加載技術中對比作選擇雖然差不多兩年沒有維護,但其本身是一個優(yōu)秀的爬蟲框架的實現,源碼中有很多值得參考的地方,特別是對爬蟲多線程的控制。 優(yōu)雅的使用WebMagic框架,爬取唐詩別苑網的詩人詩歌數據 同時在幾種動態(tài)加載技術(HtmlUnit、PhantomJS、Selenium、JavaScriptEngine)中對比作選擇 We...

    leejan97 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<