<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          nutch-ajaxNutch 組件擴展

          聯(lián)合創(chuàng)作 · 2023-09-21 16:33

          Nutch AJAX page Fetch, Parse, Index Plugin

          項目簡介

          基于Apache Nutch 2.3 和 Htmlunit, Selenium WebDriver 等組件擴展,實現(xiàn)對于 AJAX 加載類型頁面的完整頁面內(nèi)容抓取,以及特定數(shù)據(jù)項的解析和索引。

          According to the implementation of Apache Nutch 2.X, we can't get dynamic HTML information from fetch pages including AJAX requests as it will ignore all AJAX requests.

          This plugin will use Htmlunit and Selenium WebDriver to fetch whole page content with necessary dynamic AJAX requests.

          It developed and tested with Apache Nutch 2.3, you can try it on other Nutch 2.X version or refactor the source codes as your design.


          項目托管同步更新站點列表:

          https://github.com/xautlx/nutch-ajax

          http://git.oschina.net/xautlx/nutch-ajax


          主要特性

          • 常規(guī)的HTML頁面抓取: 對于常規(guī)的例如新聞類沒有AJAX特性的頁面可以直接用Nutch自帶的protocol-http插件抓取。

          • 常規(guī)的AJAX頁面抓取: 對于絕大部分諸如jQuery ajax加載的頁面,可以直接用htmlunit擴展插件抓取。

          • 特殊的AJAX請求頁面抓取: 諸如淘寶/天貓的頁面采用了獨特的Kissy Javascript組件,目前測試htmlunit無法正確解析,因此退而求其次采用效率低一些的Selenium WebDriver方式實現(xiàn)頁面數(shù)據(jù)抓取。

          • 基于頁面滾動的AJAX請求頁面抓取: 諸如淘寶/天貓的商品詳情頁面會基于頁面滾動發(fā)起商品描述信息的加載,通過Htmlunit或Selenium WebDriver擴展處理可以實現(xiàn)此類頁面數(shù)據(jù)抓取。

          擴展插件說明

          • lib-pinyin: 用于parse或index插件轉(zhuǎn)換中文到拼音提交solr;部署用于solr dataimporthandler組件進(jìn)行拼音轉(zhuǎn)換的transformer擴展插件

          • lib-htmlunit: 基于Htmlunit的多線程處理,緩存控制,請求正則控制等特性擴展插件

          • protocol-s2jh: 基于Htmlunit和Selenium WebDriver實現(xiàn)的AJAX頁面Fetcher插件

          • parse-s2jh: 基于XPath解析頁面元素內(nèi)容; 持久化解析到的結(jié)構(gòu)化數(shù)據(jù),如MySQL,MongoDB等; 對于個別復(fù)雜類型AJAX頁面定制判斷頁面加載完成的回調(diào)判斷邏輯

          • index-s2jh: 追加設(shè)置需要額外傳遞給SOLR索引的屬性數(shù)據(jù); 設(shè)定不需要索引的頁面規(guī)則;

          詳細(xì)參考文檔

          項目提供一份比較詳細(xì)的“基于Nutch&Solr定向采集解析和索引搜索的整合技術(shù)指南文檔”,可通過以下兩種方式查看參考文檔內(nèi)容:

          運行方式

          整個項目基于官方的Apache Nutch 2.3源碼基礎(chǔ)之上添加插件代碼和配置,運行方式和官方指南保持一致,具體請參考:http://wiki.apache.org/nutch/

          同時工程代碼中提交了Eclipse的工程配置文件,可以直接import Eclipse中Run或Debug運行,Nutch工程以Ivy進(jìn)行依賴管理,可采用ANT Build方式或建議在Eclipse IDE安裝Apache Ivy IDE插件進(jìn)行工程編譯運行。

          snapshot

          snapshot

          snapshot

          瀏覽 14
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  操在线视频 | 亚洲AV无码变态另类在线播放 | 一本色道久久综合亚州精品 | 国产aaa免费视频 | 在线日本高清 |