淺談基于DOM樹的信息推廣平臺設計論文
淺談基于DOM樹的信息推廣平臺設計論文
XML、DOM 把XML文檔視為一種樹結構,這種樹結構被稱為節(jié)點樹。以下是學習啦小編今天為大家精心準備的:淺談基于DOM 樹的信息推廣平臺設計相關論文。內(nèi)容僅供參考,歡迎閱讀!
淺談基于DOM 樹的信息推廣平臺設計全文如下:
1引言
隨著“互聯(lián)網(wǎng)+”時代的到來,信息的來源,可信度,及時度越來越受到人們的關注,但現(xiàn)在大多數(shù)的信息都是來自Web 網(wǎng)頁,這樣的信息多而雜,具網(wǎng)絡資料顯示,文本信息正以指數(shù)型式不斷增長。為了節(jié)約時間,就有了基于Web 頁面挖掘技術的產(chǎn)生。實現(xiàn)信息推送最好的選擇就是微信公眾平臺。微信公眾平臺是最近幾年新出的推送信息的一種新方式,它是騰迅公司在微信的基礎上新增的功能模塊,通過這一平臺,個人和企業(yè)都可以打造一個微信的公眾號,并實現(xiàn)和特定群體的文字、圖片、語音的全方位溝通、互動。
2Web 頁面挖掘
如今Internet 上很多網(wǎng)頁都是動態(tài)生成的,通過用戶填寫表單提交信息,動態(tài)的生成Deep Web 頁面,與此同時用戶提交的大量數(shù)據(jù)信息被保存在網(wǎng)站的后臺數(shù)據(jù)庫中。由于頁面中數(shù)據(jù)記錄之間的代碼具有極高的結構相似性,因此Web 數(shù)據(jù)記錄所對應的標簽樹之間自然也具有很高的相識性,所以網(wǎng)頁往往具有相似的結構和局部代碼重復性。因此數(shù)據(jù)的自動化提取則可以分為以下幾個步驟:
(1)輸入一些具有相同或相似結構的Web 頁面。
(2)對這些Web 頁面進行預處理,就是將一些與網(wǎng)頁無關的內(nèi)容進行刪除,將代碼結構不嚴謹?shù)腍TML 頁面轉換成結構嚴謹、易于處理的HTML 頁面。
(3)將處理好的頁面解析成以標簽為隊列的線性數(shù)據(jù)結構,接著利用標簽隊列的匹配去除頁面中的廣告,導航欄等。
(4)按照一些頁面性質(zhì)將網(wǎng)頁中的標簽歸類成為一些小集合,然后對這些小集合的有效數(shù)據(jù)進行自動抽取,并自動生成該類的模版頁。
3 DOM 標簽樹
HTML 通過定義一套標簽來刻畫顯示的頁面。依據(jù)標簽的作用可將HTML 的標簽分為三類:
(1)規(guī)劃網(wǎng)頁布局的標簽。在視覺上,我們都知道網(wǎng)頁是由無數(shù)的方塊嵌套在一起組成,而里面的內(nèi)容則是由標簽規(guī)劃出來的。常用的標簽有:<div> <p> <td> <tr> <table> </table> </tr> </td> </p> </div>等。
(2)描述顯示特點的標簽。在網(wǎng)頁中??吹綖榱艘鹞覀冏⒁獾牟煌袷轿淖郑鼈兌际怯梢恍撕炓?guī)定的,這類標簽稱為信息標簽。常用的有<b> <i> <strong> <h1> <h2> </h2> </h1> </strong> </i> </b>等。
(3)超鏈接相關的標簽:超鏈接是網(wǎng)頁區(qū)別于普通文本最明顯的特征之一。它表示著網(wǎng)頁間的關系,整理出超鏈接標簽可以挖掘出網(wǎng)頁間的相關內(nèi)容。
4 部分功能與實現(xiàn)的步驟
4.1HTML 的預處理
現(xiàn)在大多數(shù)的網(wǎng)站都是以HTML 文檔形式向客戶展開,每一個頁面中的數(shù)據(jù)和格式都是以一組成對的“始標記”與“結束標記”組成。例如:<br> 和</br>,<body>,</body>和,, 等。在頁面中的標簽可以相互嵌套使用。為了避免網(wǎng)頁不兼容、代碼錯誤的現(xiàn)象可能導致的頁面解析失敗,我們可以先除去一些無用的標簽,如:<from>,<select>,頁面中的style 和注釋等?!?/span>
可以把預處理流程歸納為:
(1)獲取THML 頁面。
(2)將HTML 轉換成XHTML。
(3)去除標簽和無關腳本。
(4)去除導航欄,廣告等無關數(shù)據(jù)。去除style 和注釋可以分別用正則表達式<style (? s) .* ? </style>>(\ r \ n)? 和<! - -(? s) . * ? - ->(\ r \ n)?。去除廣告,導航欄等信息的方法是主要將HTML 頁面解析成標簽樹,在根據(jù)標簽樹中具有相同名稱和屬性的節(jié)點進行分析,判斷該父節(jié)點及其以下的子節(jié)點是否相同,如果相同就從其父節(jié)點處刪除。
4.2HTML 頁面的解析
經(jīng)過HTML 處理以后生成XHTML,使得Web 結構更加規(guī)整化。這樣就更方便的判斷其節(jié)點的類型,如果該節(jié)點是開始標簽,那么就判斷它的屬性是否為空,如果不為空,則為開始標簽刪除其屬性,直到僅剩下普通文本。再根據(jù)正則表達式提取我們所需要的信息。如果遇到該節(jié)點的結束標簽,則進行下一個開始標簽的分析,直至循環(huán)到該頁面提取結束。
5 Dom 樹與信息推送的聯(lián)系
Web 頁面信息提取的過程也就是頁面擴展DOM 樹的創(chuàng)建過程。簡單來說,DOM 樹就是根據(jù)HTML 頁面中標簽的含義創(chuàng)建出來的具有層次關系的樹狀結構,樹中的每一個節(jié)點都是對應于HTML 的標簽,我們通過存取這些標簽就能操作文檔中的內(nèi)容。
程序通過操作DOM 樹,將眾多頁面中的客戶需要知道的消息提取出來存入數(shù)據(jù)庫,當用戶在消息推送的微信公眾號上查詢想知道的信息時,消息就會從數(shù)據(jù)庫中讀出來展現(xiàn)在微信平臺上。
6 結語
選用DOM 樹結構為Web 頁面信息采集的核心技術,是因為DOM 易用性強,使用時,它可以將XML 文檔信息都存于內(nèi)存中,并且遍歷簡單,支持XPath,增強了通用性,對于開發(fā)軟件較為容易。