需求概述
網站採集
網站管理員希望將別人的整站數據下載到自己的網站裡或者將別人網站的一些內容保存到自己的伺服器上。從內容中抽取相關的欄位,發布到自己的
網站系統中。有時需要將網頁相關的檔案也保存到本地,如圖片、附屬檔案等。
網站管理員會定時從同一網站上抓取內容,希望已經抓取的內容不要再發布到網站系統中。對於一些網站,需要登入才能獲取頁面。網站管理員希望通能夠通過一個內容列表頁面獲取所有的相關內容,包括內容列表的其它分頁。當第二次抓取相同網站時,希望不要再重複第一次的設定。
信息採集
網站管理員從網際網路中收集各類圖片、笑話、新聞、技術等各類信息,然後分類、編輯,發布到自己的網站系統中。網站管理員一般通過搜尋引擎搜尋各類關鍵字獲取目標網址,然後再提取網頁中的內容。關鍵字的組織決定獲取內容的準確性和數量。由於內容來自不同的網站,所以提取內容的方法也各不相同。對於某一類的信息,發布到
網站系統的數據結構是相同的。
網站管理員對站內進行搜尋,將相關的內容在首頁上進行編排和索引。
企業從網際網路上搜尋email和電話號碼,並且能夠查看該信息的相關信息,以便了解該對象的基本情況。企業希望能夠搜尋某一類別的客戶信息,如這個客戶屬於女性,年齡為20到30歲等。並且能夠將採集到的對象信息保存到企業內部的客戶管理系統中。
企業需要了解某一產品的信息,希望得到該類產品的報價、廠商等,以及這些信息的對比情況。並且能夠得到報價、廠商的近一步信息。這些信息希望能夠保存到企業的內部的ERP系統或其它系統中。
數據結構化
企業辦公產生的電子文檔,客戶提交的客戶資料等這些數據,一般需要大量的人力手工輸入到企業的ERP系統或信息系統中,企業希望能夠通過軟體從這些文檔中抽取相關的數據自動導入到系統中。這些數據一般都有固定的模板格式,並且同一類文檔的模板格式是相同的。如客戶的家庭信息,客戶1和客戶2的模板格式是一樣的,只是內容不一樣。
主要技術
網站採集器核心技術是模式定義和模式匹配。模式屬於人工智慧的術語,意思為前人所積累的經驗的抽象和升華。簡單地說,就是從不斷重複出現的事件中發現和抽象出的規律,是解決問題的經驗的總結。只要是一再重複出現的事物,就可能存在某種模式。
所以要讓網站採集器能夠運行,目標網站必須具備重複出現的特徵。目 前大多網站都是動態生成的,這樣就會讓同一模板的頁面包含相同的內容,網站採集器正是利用這些相同的內容來定位採集數據的。
網站採集器中的模式大多不是程式自動發現的,目 前幾乎所有的網站採集器產品都需要通過人工來定義。但模式本身是個很複雜,很抽象的內容,所以所有的開發者精力都花在怎樣讓模式定義更簡單,更準確,這也是網站採集器競爭力的衡量標準。
但我們怎樣來描述模式呢,目 前技術主要有兩種方式:正則表達式定義和文檔結構定義。
正則表達式定義
正則表達式定義是目 前主流套用的技術,主要代表為火車頭採集器。此技術簡單,靈活性高。但用戶操作複雜。由於此模式作用於網頁的原始碼上,因此匹配的結果受代碼版面格式影響比較大,並且也不夠直觀,對比較複雜的頁面結構幾乎無能為力。 目 前已經有幾款產品使用輔助工具來減低用戶的操作難度。
文檔結構定義
文檔結構定義應該說它是目前最先進的技術,已經具備一定的模式學習能力。此模式作用於文檔這一層,不同於正則表達式作用於頁面原始碼。所謂文檔這一層,指的是原始碼運行後所生成的實際對象,即用戶在瀏覽器所看到的內容。所以操作可視化是此技術天生就具備的能力。
由於它是對文檔結構進行匹配,所以它不受頁面原始碼的影響,用戶定義比較直觀,並且程式能夠根據文檔對象獲取更多的邏輯上的特徵信息,匹配更準確,通用性更強。
此技術在學術研究論文上已經呈現過,也在幾家實驗室開發出此類產品。但真正在商業上套用很少。
目 前能夠面向普通大眾的,只有DM實驗室推出的視采採集器,該產品不僅在技術起點上比較高,而且在用戶使用這一層上,所獨有的實時用戶操作嚮導功能也是讓人驚奇的,此技術讓專業級操作變為傻瓜式操作,真是科學讓一切變為可能!
用戶特點
系統的最終用戶群包含網站的管理員們,對一些給目標地址做了隱藏的網站,可能會使他們操作失敗,特別有些網站對網頁內容作了擾亂處理,使得他們更難準確地定義規則。對於這些問題,系統提供一些範例和匹配通配符,告訴他們的應對方法。並且官方網站提供交流論壇,共享和學習相互之間的經驗。
對於信息採集的用戶,系統提供豐富的模板模式供用戶使用,如email匹配模式、電話號碼匹配模式等,只需要用戶選擇一個模板,就可以獲得他們想要的信息。當然官方網站提供豐富模板資源供以下載。
對於數據結構化的套用,會有第三方的技術人員提供支持。
系統預留了輸入輸出的編程接口,一些用戶擴展這些接口,使系統套用到更多的場合下。針對這些用戶,系統提供詳細的接口說明,擴展示例代碼。我們提供開發包,並描述每個類和每個方法的使用方法和功能。
還有一類用戶屬於商人的範疇,他們僅從事規則的製作,在網上交換或出售自己的規則。他們更關心網站的搜尋和內容的質量,他們分兩種類型,一種是獵人,他們能夠發現各種各樣的信息,能夠滿足各類網管的內容需求,他們從數量上獲取大把金錢。當然,對於個別稀有的內容,價格就像黃金一樣了。另一種屬於黑客,他們精通web技術,機智並執著,在他們手裡,都是一些很難發掘到的精品,當然價格都是高昂的。
由於採集系統屬於開放式軟體,會有很多人去分析和使用採集系統中的組件,擴展和完善採集系統。他們使用的級別不僅是系統的界面上,而是深入到代碼的內部上,他們需要參考採集系統的各類技術文檔,所以系統除了用戶手冊,其它的開發文檔也是必不可少的。
系統需求
(1)多樣化的採集目標
信息分布在各種信息存儲系統中,各種存儲系統有著各自的互動機制,需要採集系統提供多種並可擴展的連線模組。
(2)多樣化的數據格式
信息以多種形式存在,如網頁、word文檔、pdf等。這些不同的格式數據需要採用不同的採集機制。
(3)分散式海量數據
由於網路通信的延時和網路頻寬的限制,並發多執行緒通信能夠有效地減低延時和搶奪資源。
(4)數據橫向和縱向採集
需要系統自動採集數據的下一頁;自動採集數據的關聯附屬檔案;自動根據當前採集結果採集下一數據。
(5)用戶操作簡單、快捷
多樣且複雜的數據格式增加用戶的作業難度,用戶希望所見及所得,及時提供相應的操作提示信息。
市場分析
網際網路套用
隨著網際網路的發展及普及,網際網路用戶迅速增長,上網已成為人們生活中的日常內容,人們通過網站閱讀,發表,搜尋,交流,購物等,所有這些上網行為,由點到線,都將匯聚龐大的商業價值。因此,網際網路成為眾多人的夢想帝國,淘金之地。不管您是腰纏萬貫,還是身無分文,這裡只談信息為王,服務至上。因此信息的創造、收集、組織和再加工是網站的生存基礎。信息採集系統可以通過網站管理員指定的網站地址和預定義的抓取規則,自動獲取網頁內容,自動按照自身
網站系統的數據結構抽取數據,並發布到網站系統中,讓您不花絲毫心血和金錢,就可以使您的網站一夜之間
網羅天下。
信息搜尋
由於各種用戶群體的網路連線,使得網際網路成為一個包羅萬象的信息庫,商業的、學術的、個體的等等信息都可以在網際網路上發布和獲取,因此,企業可以通過網際網路獲取客戶資源、市場行情、商業信息等。但在這茫茫的信息大海,我們常常缺少一種工具來發現我們所關心的內容,並有效的組織和儲備它們,使之成為企業的內部資源。信息採集系統可以根據數據模式,自動通過搜尋引擎檢索數據,將匹配的信息顯示在您的桌面上。
資料錄入
企業管理系統,企業信息管理系統、客戶服務系統等各種信息處理系統,它們只能處理結構化的數據,如學生信息包括用戶名、性別、年齡等屬性,它們必須保存在預定義的結構里。但系統外界會有大量的非結構化數據,如客戶提交的材料、公司內部文檔等。而這些數據通常是人工統計和人工輸入各類信息處理系統中。信息採集系統它能將一篇文檔按信息系統的數據結構自動抽取成多個欄位,並自動將這些欄位導入到企業的各類信息處理系統中。
研發機構
DM實驗室
視采採集器是由DM實驗室研發的一款網站採集軟體。該系統使用先進的網頁結構特徵識別以及樣本自動學習技術突破當今數據抽取複雜難套用的難題。
視采採集器主要包含兩項技術成果:
◇可視化用戶體驗
數據可以用圖象、曲線、二維圖形、三維體和動畫來顯示,並可對其模式和相互關係進行可視化分析。
◇半結構化數據模式抽取
模式抽取指的是從半結構化數據中自動發現數據的結構特徵。模式抽取在半結構化數據研究領域中具有重要意義,它是數據挖掘的基礎。
東南大學
Versatile是東南大學研製的一個基於CORBA的異構數據源集成系統原型,旨在以“即插即用”方式集成來自不同數據源的數據,該系統的研製受到國家自然科學基金資助.在Versatile中採用對象集成模型OIM作為各數據源的輸出模式的數據模型,查詢語言是OIQL.查詢集成器QI(query integrator)接收OIQL查詢後分解至各個數據源.在Versatile中,有些數據源,如RDBMS和OODBMS,由於本身具有數據管理功能,因此相應的包裝器(wrapper)將OIQL翻譯為本地查詢語言(如SQL,OQL等),再將結構轉換為OIM對象;而某些數據源,如檔案系統、Web數據,由於自身沒有數據查詢功能,因此在Versatile中包裝器將數據包裝為OIM,然後實施OIM的查詢處理
IBM數據實驗室
IBM Neel Sundaresan等在基於Web的單詞/縮寫的挖掘中,把2級的二元性問題擴展為n級,並實現用戶英文單詞簡稱的抽取。