不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦 > 論文大全 > 學(xué)科論文 > 計(jì)算機(jī)論文 > 淺談基于DOM樹的信息推廣平臺(tái)設(shè)計(jì)論文

淺談基于DOM樹的信息推廣平臺(tái)設(shè)計(jì)論文

時(shí)間: 謝樺657 分享

淺談基于DOM樹的信息推廣平臺(tái)設(shè)計(jì)論文

  XML、DOM 把XML文檔視為一種樹結(jié)構(gòu),這種樹結(jié)構(gòu)被稱為節(jié)點(diǎn)樹。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于DOM 樹的信息推廣平臺(tái)設(shè)計(jì)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

  淺談基于DOM 樹的信息推廣平臺(tái)設(shè)計(jì)全文如下:

  1引言

  隨著“互聯(lián)網(wǎng)+”時(shí)代的到來,信息的來源,可信度,及時(shí)度越來越受到人們的關(guān)注,但現(xiàn)在大多數(shù)的信息都是來自Web 網(wǎng)頁,這樣的信息多而雜,具網(wǎng)絡(luò)資料顯示,文本信息正以指數(shù)型式不斷增長。為了節(jié)約時(shí)間,就有了基于Web 頁面挖掘技術(shù)的產(chǎn)生。實(shí)現(xiàn)信息推送最好的選擇就是微信公眾平臺(tái)。微信公眾平臺(tái)是最近幾年新出的推送信息的一種新方式,它是騰迅公司在微信的基礎(chǔ)上新增的功能模塊,通過這一平臺(tái),個(gè)人和企業(yè)都可以打造一個(gè)微信的公眾號(hào),并實(shí)現(xiàn)和特定群體的文字、圖片、語音的全方位溝通、互動(dòng)。

  2Web 頁面挖掘

  如今Internet 上很多網(wǎng)頁都是動(dòng)態(tài)生成的,通過用戶填寫表單提交信息,動(dòng)態(tài)的生成Deep Web 頁面,與此同時(shí)用戶提交的大量數(shù)據(jù)信息被保存在網(wǎng)站的后臺(tái)數(shù)據(jù)庫中。由于頁面中數(shù)據(jù)記錄之間的代碼具有極高的結(jié)構(gòu)相似性,因此Web 數(shù)據(jù)記錄所對(duì)應(yīng)的標(biāo)簽樹之間自然也具有很高的相識(shí)性,所以網(wǎng)頁往往具有相似的結(jié)構(gòu)和局部代碼重復(fù)性。因此數(shù)據(jù)的自動(dòng)化提取則可以分為以下幾個(gè)步驟:

  (1)輸入一些具有相同或相似結(jié)構(gòu)的Web 頁面。

  (2)對(duì)這些Web 頁面進(jìn)行預(yù)處理,就是將一些與網(wǎng)頁無關(guān)的內(nèi)容進(jìn)行刪除,將代碼結(jié)構(gòu)不嚴(yán)謹(jǐn)?shù)腍TML 頁面轉(zhuǎn)換成結(jié)構(gòu)嚴(yán)謹(jǐn)、易于處理的HTML 頁面。

  (3)將處理好的頁面解析成以標(biāo)簽為隊(duì)列的線性數(shù)據(jù)結(jié)構(gòu),接著利用標(biāo)簽隊(duì)列的匹配去除頁面中的廣告,導(dǎo)航欄等。

  (4)按照一些頁面性質(zhì)將網(wǎng)頁中的標(biāo)簽歸類成為一些小集合,然后對(duì)這些小集合的有效數(shù)據(jù)進(jìn)行自動(dòng)抽取,并自動(dòng)生成該類的模版頁。

  3 DOM 標(biāo)簽樹

  HTML 通過定義一套標(biāo)簽來刻畫顯示的頁面。依據(jù)標(biāo)簽的作用可將HTML 的標(biāo)簽分為三類:

  (1)規(guī)劃網(wǎng)頁布局的標(biāo)簽。在視覺上,我們都知道網(wǎng)頁是由無數(shù)的方塊嵌套在一起組成,而里面的內(nèi)容則是由標(biāo)簽規(guī)劃出來的。常用的標(biāo)簽有:<div> <p> <td> <tr> <table> </table> </tr> </td> </p> </div>等。

  (2)描述顯示特點(diǎn)的標(biāo)簽。在網(wǎng)頁中??吹綖榱艘鹞覀冏⒁獾牟煌袷轿淖?,它們都是由一些標(biāo)簽規(guī)定的,這類標(biāo)簽稱為信息標(biāo)簽。常用的有<b> <i> <strong> <h1> <h2> </h2> </h1> </strong> </i> </b>等。

  (3)超鏈接相關(guān)的標(biāo)簽:超鏈接是網(wǎng)頁區(qū)別于普通文本最明顯的特征之一。它表示著網(wǎng)頁間的關(guān)系,整理出超鏈接標(biāo)簽可以挖掘出網(wǎng)頁間的相關(guān)內(nèi)容。

  4 部分功能與實(shí)現(xiàn)的步驟

  4.1HTML 的預(yù)處理

  現(xiàn)在大多數(shù)的網(wǎng)站都是以HTML 文檔形式向客戶展開,每一個(gè)頁面中的數(shù)據(jù)和格式都是以一組成對(duì)的“始標(biāo)記”與“結(jié)束標(biāo)記”組成。例如:<br> 和</br>,<body>,</body>,, 等。在頁面中的標(biāo)簽可以相互嵌套使用。為了避免網(wǎng)頁不兼容、代碼錯(cuò)誤的現(xiàn)象可能導(dǎo)致的頁面解析失敗,我們可以先除去一些無用的標(biāo)簽,如:<from>,<select>,頁面中的style 和注釋等?!?/span>

  可以把預(yù)處理流程歸納為: 
 (1)獲取THML 頁面。
  (2)將HTML 轉(zhuǎn)換成XHTML。
  (3)去除標(biāo)簽和無關(guān)腳本。
  (4)去除導(dǎo)航欄,廣告等無關(guān)數(shù)據(jù)。去除style 和注釋可以分別用正則表達(dá)式
<style (? s) .* ? </style>>(\ r \ n)? 和<! - -(? s) . * ? - ->(\ r \ n)?。去除廣告,導(dǎo)航欄等信息的方法是主要將HTML 頁面解析成標(biāo)簽樹,在根據(jù)標(biāo)簽樹中具有相同名稱和屬性的節(jié)點(diǎn)進(jìn)行分析,判斷該父節(jié)點(diǎn)及其以下的子節(jié)點(diǎn)是否相同,如果相同就從其父節(jié)點(diǎn)處刪除。

  4.2HTML 頁面的解析

  經(jīng)過HTML 處理以后生成XHTML,使得Web 結(jié)構(gòu)更加規(guī)整化。這樣就更方便的判斷其節(jié)點(diǎn)的類型,如果該節(jié)點(diǎn)是開始標(biāo)簽,那么就判斷它的屬性是否為空,如果不為空,則為開始標(biāo)簽刪除其屬性,直到僅剩下普通文本。再根據(jù)正則表達(dá)式提取我們所需要的信息。如果遇到該節(jié)點(diǎn)的結(jié)束標(biāo)簽,則進(jìn)行下一個(gè)開始標(biāo)簽的分析,直至循環(huán)到該頁面提取結(jié)束。

  5 Dom 樹與信息推送的聯(lián)系

  Web 頁面信息提取的過程也就是頁面擴(kuò)展DOM 樹的創(chuàng)建過程。簡單來說,DOM 樹就是根據(jù)HTML 頁面中標(biāo)簽的含義創(chuàng)建出來的具有層次關(guān)系的樹狀結(jié)構(gòu),樹中的每一個(gè)節(jié)點(diǎn)都是對(duì)應(yīng)于HTML 的標(biāo)簽,我們通過存取這些標(biāo)簽就能操作文檔中的內(nèi)容。

  程序通過操作DOM 樹,將眾多頁面中的客戶需要知道的消息提取出來存入數(shù)據(jù)庫,當(dāng)用戶在消息推送的微信公眾號(hào)上查詢想知道的信息時(shí),消息就會(huì)從數(shù)據(jù)庫中讀出來展現(xiàn)在微信平臺(tái)上。

  6 結(jié)語

  選用DOM 樹結(jié)構(gòu)為Web 頁面信息采集的核心技術(shù),是因?yàn)镈OM 易用性強(qiáng),使用時(shí),它可以將XML 文檔信息都存于內(nèi)存中,并且遍歷簡單,支持XPath,增強(qiáng)了通用性,對(duì)于開發(fā)軟件較為容易。

412376