專利名稱:網頁下載的方法和裝置的制作方法
技術領域:
本發明總體上涉及計算機領域,尤其涉及一種網頁下載的方法和裝置。更具體地, 本發明涉及一種針對具有多個結構相似的網頁的網站進行網頁下載的方法和裝置。
背景技術:
隨著因特網和電子技術的飛速發展,人們不再受地域的限制,可以方便的在網上交換各種各樣的信息。在大量用戶的參與之下,網站(比如論壇、博客、產品目錄網站等)的網頁中存在大量的有用信息,這些信息不僅對于個人而且對于企業都有很好的使用價值。為了獲得這些有用信息,需要下載網站中所包括的多個網頁以進行進一步的分析提取。在現有技術中,通常是對網站的URL (Uniform Resource Locator,統一資源定位符)進行深度擴展,來逐層次地下載網頁,最終完成網站的網頁的下載。這種處理沒有針對性,經常需要人工干預,因而處理過程需要較長的時間,效率不高。
發明內容
在下文中給出了關于本發明的簡要概述,以便提供關于本發明的某些方面的基本理解。應當理解,這個概述并不是關于本發明的窮舉性概述。它并不是意圖確定本發明的關鍵或重要部分,也不是意圖限定本發明的范圍。其目的僅僅是以簡化的形式給出某些概念,以此作為稍后論述的更詳細描述的前序。本發明的一個目的在于提供一種網頁下載的方法和裝置,其可以針對具有多個結構相似的網頁的網站(諸如論壇、博客、產品目錄網站等等)進行高效、自動的網頁下載。本發明的另一個目的是提供在被計算設備執行時使計算設備能夠執行上述方法的處理過程的計算機程序代碼,以及其上存儲有該計算機程序代碼的計算機可讀存儲介質及計算機程序產品。為了實現上述目的,根據本發明的一個方面,提供了一種網頁下載的方法,包括 選取步驟,從多個網頁中選取至少一個列表頁面;模板生成步驟,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;以及下載更新步驟,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁根據本發明的另一個方面,提供了一種網頁下載的裝置,包括選取單元,從多個網頁中選取至少一個列表頁面;模板生成單元,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;以及下載更新單元,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。依據本發明的其它方面,還提供了相應的計算機程序代碼、計算機可讀存儲介質和計算機程序產品。通過以下結合附圖對本發明的最佳實施例的詳細說明,本發明的這些以及其他優點將更加明顯。
本發明可以通過參考下文中結合附圖所給出的描述而得到更好的理解,其中在所有附圖中使用了相同或相似的附圖標記來表示相同或者相似的部件。所述附圖連同下面的詳細說明一起包含在本說明書中并且形成本說明書的一部分,而且用來進一步舉例說明本發明的優選實施例和解釋本發明的原理和優點。在附圖中圖1是示出了根據本發明的一個實施例的網頁下載方法的示意性流程圖。圖2是示出了根據本發明的一個實施例的選取至少一個列表頁面的處理的示意性流程圖。圖3示出了根據本發明一個實施例的生成列表頁面模板的處理的示意性流程圖。圖4示出了根據本發明一個實施例的利用所生成的列表頁面模板和所選取的列表頁面來下載和/或更新主題頁面的處理的示意性流程圖。圖5是示出根據本發明一個實施例的判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新的處理的流程圖。圖6是示出根據本發明另一個實施例的判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新的處理的流程圖。圖7是示出了根據本發明的一個實施例的網頁下載裝置的示意性結構圖。圖8示出了根據本發明一個實施例的模板生成單元的示意性結構圖。圖9示出了根據本發明一個實施例的下載更新單元的示意性結構圖。圖10是示出了其中可以實現根據本發明實施例的方法和/或裝置的通用個人計算機的示例性結構的方框圖。
具體實施例方式在下文中將結合附圖對本發明的示范性實施例進行描述。為了清楚和簡明起見, 在說明書中并未描述實際實施方式的所有特征。然而,應該了解,在開發任何這種實際實施例的過程中必須做出很多特定于實施方式的決定,以便實現開發人員的具體目標,例如,符合與系統及業務相關的那些限制條件,并且這些限制條件可能會隨著實施方式的不同而有所改變。此外,還應該了解,雖然開發工作有可能是非常復雜和費時的,但對得益于本公開內容的本領域技術人員來說,這種開發工作僅僅是例行的任務。在此,還需要說明的一點是,為了避免因不必要的細節而模糊了本發明,在附圖中僅僅示出了與根據本發明的方案密切相關的裝置結構和/或處理步驟,而省略了與本發明關系不大的其他細節。本發明旨在提供一種網頁下載的方法和裝置,其可以針對具有多個結構相似的網頁的網站(諸如論壇、博客、產品目錄網站等)進行高效、自動的網頁下載。在本申請中所提及的具有多個結構相似的網頁的網站可以包括論壇、博客、產品目錄網站等。在這些網站中,通常至少可以包括以下類型的網頁主題頁面,其中主要包括涉及不同主題的有用信息;列表頁面,其中主要包括不同主題頁面的URL(Uniform Resource Locator,統一資源定位符)信息、時間信息、發表信息、標題信息、回復信息等。例如,對于論壇網站而言,列表頁面是指論壇網站中的版塊頁面(board page),例如“新浪旅游論壇”下的版塊頁面如“游記攻略”,而主題頁面(topic page)是指各版塊頁面中包含的不同主題的頁面(即,可從各版塊頁面中的主題頁面URL鏈接到的主題的頁面),例如,“游記攻略”版塊下的某一主題的頁面。圖1是示出了根據本發明的一個實施例的網頁下載方法的示意性流程圖。如圖1所示,在步驟102,選取至少一個列表頁面。具體來說,可以根據網頁的文本特征和/或結構特征從多個網頁中選取至少一個列表頁面。圖2是示出了根據本發明的一個實施例的選取至少一個列表頁面的處理的示意性流程圖。如圖2所示,首先在步驟202獲取多個網頁。在此,獲取多個網頁的方式可以有很多種。根據本發明的一個實施例,在網站是BBS(Bulletin Boards System,電子布告欄系統)論壇的情況下,可以根據論壇首頁中包括的URL來下載多個網頁,由此獲取了多個網頁。根據本發明的另一個實施例,可以將已有的網頁直接作為所述多個網頁(例如, 將本地存儲的網頁直接作為所述多個網頁)。根據本發明的又一個實施例,還可以直接輸入多個網頁,由此獲取多個網頁。接著,在步驟204,判斷某一網頁是否是列表頁面。具體來說,根據網頁的文本特征和/或結構特征來判斷該網頁是否是列表頁面。根據本發明的一個實施例,可以根據網頁的結構特征中的至少一個來判斷該網頁是否是列表頁面。如上所述,列表頁面主要包括不同主題頁面的URL信息、時間信息、發表信息、標題信息、回復信息等。因此,從網頁結構上來看,列表頁面至少可具有如下的結構特征包含大量的時間信息、包含大量的鏈接信息、URL文本占頁面文本的比率大、結構重復度高等。因而,可根據這些結構特征中的至少一個來判斷網頁是否是列表頁面。例如,可以采用閾值比較的方法來進行判斷。當網頁中包含的時間信息的量(或者是包含的鏈接信息的量、URL文本與頁面文本的比率、結構重復度等)超過預設的閾值 (可以根據經驗值來設定閾值)時,可以將該網頁判定為列表頁面。盡管以上只是描述了利用一個結構特征來判斷網頁是否是列表頁面,但本發明不限于此,顯然,還可以基于上述多個結構特征的任意組合來進行判斷。此外,根據本發明的另一個實施例,可以根據網頁的文本特征中的至少一個來判斷該網頁是否是列表頁面。具體來說,網頁的文本特征可以包括網頁標題、網頁自身的URL中的特征標識符、網頁中包含的URL中的特征標識符、網頁編號等。可以根據這些文本特征中的至少一個來判斷網頁是否是列表頁面。例如,在網站是BBS論壇的情況下,列表頁面通常是各個版塊或子版塊的首頁。在這種情況下,如果網頁的標題直接包含了表明該網頁是某一版塊或子版塊的首頁的內容 (例如“新浪母嬰頻道”、“天涯股市論壇”等),則可以直接將該網頁判定為列表頁面。
另外,還可以根據網頁自身的URL中的特征標識符來進行判斷。例如,當網頁自身的URL包括一些可以表明該網頁是列表頁面的特征標識符(例如forum、board、boarded、 fid、shownform、forumid、bid等)時,可以將該網頁判定為列表頁面。另外,還可以根據網頁中所包括的URL中的特征標識符來進行判斷。例如,在網站是BBS論壇的情況下,每個版塊頁面(即列表頁面)中所包括的URL(例如,子版塊頁面的 URL或主題頁面的URL)中通常會具有相同的特征標識符(例如board title.topic title 等)。因而,可以根據網頁中所包括的URL中的特征標識符來判斷該網頁是否是列表頁面。另外,可以進一步根據網頁的編號來判斷網頁是否是列表頁面。例如,在BBS系統中,各個版塊可以被分別編號為boardl、board2、board3等,如果某個網頁的URL或主題名稱中包含了表明該網頁是某個版塊(或子版塊)的首頁的內容(例如,URL中包括“/ boardl/index. html”、或者主題名稱中包括“版塊1”等),則可以將該網頁確定為列表頁面。盡管以上只是描述了利用一個文本特征來判斷網頁是否是列表頁面,但本發明不限于此,顯然,還可以基于上述文本結構特征的任意組合來進行判斷。此外,盡管分別描述了根據至少一個結構特征或根據至少一個文本特征來判斷網頁是否是列表頁面,但本發明不限于此。顯然,還可以基于至少一個結構特征和/或至少一個文本特征的任意組合來進行判斷。如果在步驟204確定網頁不是列表頁面,則處理流程進行到步驟208,判斷是否還有其它網頁需要處理。如果在步驟204確定網頁是列表頁面,則處理流程進行到步驟206,S卩,下載該列表頁面,并進一步判斷該列表頁面是否有后續頁面。具體來說,可以通過判斷列表頁面是否包括用于示出后續頁面的URL的特殊標識,來初步判斷該列表頁面是否具有后續頁面。例如,特殊標識可以是文字形式的特殊標識“下一頁”、“ next ”等、符號形式的特殊標識“ > ”、“》”等、數字形式的特殊標識“ 1 ”、“ 2 ”、
U Q ”
O 寸O如果在步驟206確定列表頁面中存在上述的特殊標識中的任意一個或多個,則在步驟210進一步判斷該特殊標識是否是分頁符,從而更為準確地判斷列表頁面是否有后續頁面。具體來說,如果特殊標識是分頁符(也可稱之為分頁標識),則與該特殊標識(即分頁符)對應的URL是列表頁面的后續頁面的URL。因此,可以根據與特殊標識對應的URL 和列表頁面的URL的相似程度來判斷該特殊標識是否是分頁符。例如,在BBS系統中,列表頁面的URL與該列表頁面的后續頁面的URL的相似程度很高(例如具有相同的主機名、在網站中的層次位置相同等);區別較小(例如只是網頁的序號不同)。因此,可以基于上述區別來判斷特殊標識所對應的URL與列表頁面的URL的相似程度。根據本發明的一個實施例,可以先比較列表頁面的URL和與特殊標識對應的URL 的主機是否相同。如果不同,則可以判定該特殊標識不是分頁符;如果相同,則在不考慮 URL中的網頁序號的情況下,進一步比較兩個URL中的其它部分(例如,在網站中的層次位置)是否相同。如果不同,則可以判定該特殊標識不是分頁符;如果相同,則可以判定該特殊標識對應的URL與列表頁面的URL的相似程度較高,也就是說,可以判定該特殊標識是分頁符。參見圖2,如果在步驟206確定列表頁面中不存在任何上述特殊標識,或者如果在步驟210判定特殊標識不是分頁符(即特殊標識的URL與列表頁面的URL的相似程度不高),則處理流程進行到步驟208,判斷步驟202中獲取的多個網頁中是否還有其它網頁需要處理。如果在步驟210判定特殊標識是分頁符(即特殊標識的URL與列表頁面的URL的相似程度高),則在步驟212根據該分頁符所對應的URL來下載與之對應的網頁。優選地,根據本發明的一個實施例,為了提高準確度,在步驟212下載網頁之后, 可以回到步驟204再次判斷下載的網頁是否是列表頁面,并且在步驟206進一步判斷該網頁是否還有后續頁面。這樣,通過上述的處理,可以從多個網頁中選取出至少一個列表頁面。回到圖1,在選取出至少一個列表頁面之后,可以在步驟104生成列表頁面模板。 具體來說,可以根據選出的列表頁面中的至少一個來生成列表頁面模板。圖3示出了根據本發明一個實施例的生成列表頁面模板的方法的示意性流程圖。如圖3所示,在步驟302中,基于在步驟102中選出的列表頁面中的至少一個來建立各列表頁面的DOM(Document Object Model,文檔對象模型)樹結構。例如,可以利用DOM 技術來解析列表頁面,從而建立列表頁面的DOM樹結構。在步驟304中,選擇列表頁面的DOM樹結構中的一個或多個節點。具體而言,在列表頁面的DOM樹結構中可以自動或手動地選出包含感興趣的信息的節點。在一個實施例中,感興趣的信息可以包括某一主題的標題、與標題對應的URL、首次發表時間、最新的回復時間、回復數量、發帖人、網頁編號、和/或點擊量等。在一個實施例中,可以自動地在DOM樹中選擇節點。例如,可以在DOM樹中選出包含主題的標題的節點、包含與主題標題對應的URL的節點、包含主題發表時間的節點、包含主題最新回復時間的節點、包含主題回復數量的節點、包含主題發帖人的節點、和/或包含主題頁面的網頁編號的節點等。在另一實施例中,可以由用戶通過輸入裝置(例如鍵盤、鼠標等)來在人機交互界面中選擇節點。例如,用戶可以在DOM樹中選出包含主題的標題的節點、包含與主題標題對應的URL的節點、包含主題發表時間的節點、包含主題最新回復時間的節點、包含主題回復數量的節點、包含主題發帖人的節點、和/或包含主題頁面的網頁編號的節點等。選擇節點的原則可以包括路徑盡可能短,能夠包括完整的節點內容,并且不包括太多的干擾信息。在步驟306中,從相應的DOM樹結構中獲取所選擇的節點的路徑信息。在一個實施例中,節點的路徑信息可以是字符串形式的。在步驟308中,保存所選擇的各節點的路徑信息,從而生成列表頁面模板。當生成了所有所選擇節點的路徑信息后,也就獲得了包括這些節點的路徑信息的列表頁面模板。回到圖1,在步驟106下載和/或更新主題頁面。具體來說,可以利用所生成的列表頁面模板和所獲得的每個列表頁面來進行下載和/或更新。圖4示出了根據本發明一個實施例的利用所生成的列表頁面模板和所獲取的列表頁面來下載和/或更新主題頁面的處理的示意性流程圖。具體來說,下載和/或更新主題頁面的步驟可以包括信息提取步驟,基于列表頁面模板從列表頁面提取與主題頁面有關的信息;判斷步驟,判斷列表頁面中是否存在新發表的主題或者已有的主題是否有新回復;以及執行步驟,基于判斷步驟的結果來進行下載和/或更新。如圖4所示,在信息提取步驟402,基于列表頁面模板從列表頁面中提取相關信肩、ο具體來說,可以基于列表頁面模板中的路徑信息從列表頁面中提取出與主題頁面有關的信息。在一個實施例中,所述與主題頁面有關的信息可以包括主題的標題和主題的首次發表時間中的至少一個,主題的最新回復時間和主題的回復數量中的至少一個,以及主題的第一主題頁面的URL(即與主題標題對應的URL)。在此,主題的第一主題頁面是指具有同一主題的一個或多個主題頁面中的第一個頁面,而其他的主題頁面則是該第一主題頁面的后續頁面。基于列表頁面模板中的包含這些信息的節點的路徑信息,可以從列表頁面中提取出所述相關信息。接著,在判斷步驟404,判斷列表頁面中是否存在新主題或者是否存在新回復(即列表頁面中的主題是否有更新)。具體來說,根據提取出的與主題頁面有關的信息來判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新。圖5是示出根據本發明一個實施例的判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新的處理的流程圖。如圖5所示,在步驟502獲取上一次下載時間。可以本地獲取或者從外部輸入上一次的下載時間。在一個實施例中,在每次下載網頁時,可以將下載時間存儲在本地服務器上。在這種情況下,可以從本地服務器上直接獲取上一次的下載時間。在另一個實施例中,可以由用戶手動輸入上一次的下載時間。在這種情況下,用戶例如可以通過人機交互界面來輸入上一次的下載時間。接著,在步驟504,判斷列表頁面中是否存在新主題。在一個實施例中,可以通過將列表頁面中包含的每一個主題的、提取出的主題首次發表時間與獲取的上一次下載時間進行比較,或者通過判斷列表頁面中是否存在新的主題標題(例如,可以通過將列表頁面中包含的所有主題的主題標題與上一次下載網頁時該列表頁面中包含的所有主題的主題標題進行比較來判斷),來判斷列表頁面中是否存在新主題。如果在步驟504確定列表頁面中有至少一個主題的首次發表時間在上一次下載時間之后,或者確定列表頁面中存在新的主題標題,則在步驟508判定列表頁面中存在新主題。如果在步驟504確定列表頁面中包含的所有主題的首次發表時間均不晚于上一次下載時間,或者確定列表頁面中不存在新的主題標題,則處理進行到步驟506,以進一步判斷列表頁面中是否存在新回復(即,判斷列表頁面中的主題是否有更新)。
在步驟506,將列表頁面中包含的所有主題的、提取出的最新回復時間與獲取的上一次下載時間進行比較。如果列表頁面中有至少一個主題的最新回復時間在上一次下載時間之后,則在步驟512判定列表頁面中的主題存在新回復。如果列表頁面中包含的所有主題的最新回復時間均不晚于上一次下載時間,則在步驟510判定列表頁面中的主題不存在新回復,也就是說,該列表頁面中的主題沒有更新。這樣,可以判斷出列表頁面中是否存在新主題或者列表頁面中的已有主題是否有更新。圖6是示出根據本發明另一個實施例的判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新的處理的流程圖。圖6中的處理流程和圖5中的處理流程的區別在于在圖6所示的實施例中,根據列表頁面中包含的所有主題的回復數量來判斷列表頁面中的主題是否存在新回復。因此, 此處只是針對這種不同之處進行詳細描述而省略了對其它相同處理的重復描述。如圖6所示,在步驟606,通過比較列表頁面中包含的所有主題的最新回復數量 (即當前回復數量)和上一次下載時的回復數量,來判斷列表頁面中的主題是否存在新回復。如果列表頁面中有至少一個主題的當前回復數量多于其上次下載時的回復數量, 則在步驟612判定列表頁面中的主題存在新回復。其中,可以本地獲取主題的上一次下載時的回復數量,或者也可以從外部輸入主題的上一次下載時的回復數量。如果列表頁面中的所有主題的當前回復數量均不多于其上次下載時的回復數量, 則在步驟610判定列表頁面中的主題不存在新回復,也就是說,該列表頁面中的主題沒有更新。回到圖4,在完成關于列表頁面中是否存在新主題或者列表頁面中的主題是否有更新的判斷后,進入執行步驟406。具體來說,如果列表頁面中的主題存在更新(即出現新回復)和/或列表頁面中出現新主題,則更新該主題的主題頁面和/或下載該新主題的主題頁面;如果列表頁面中沒有出現新主題也不存在更新,則結束處理。在本發明的一個實施例中,如果判定存在新主題,則根據提取出的主題的第一主題頁面的URL來下載該新主題的主題頁面。優選地,在另一個實施例中,在下載主題的第一主題頁面后,可以進一步判斷下載的第一主題頁面中是否包括用于表示還存在后續頁面的特殊標識。如果存在特殊標識,則將該特殊標識對應的URL與下載的第一主題頁面的URL進行相似性比較。如果相似程度較高,則可將該特殊標識確定為分頁符,并進一步根據該分頁符對應的URL來下載第一主題頁面的后續頁面。通過重復上述處理,可以下載具有同一主題的所有主題頁面。其中,判斷分頁符的處理和比較URL的相似程度的處理與之前結合步驟206和210描述的處理類似, 因此在此不再重復描述。在本發明的另一個實施例中,在判定列表中的主題存在新回復的情況下,則可以從該主題的最近一次下載位置起接著下載該主題的自上一次下載時間后的回復內容,即更新該主題的主題頁面。其中,可以本地獲取主題的最近一次下載位置,或者也可以從外部輸入主題的最近一次下載位置。
回到圖1,由此完成了對包括多個結構相似的網頁的網站的網頁下載和/或更新。此外,在本發明的另一個實施例中,圖1的下載和/或更新步驟106可以進一步包括記錄相關信息的步驟。盡管圖中沒有示出,但是優選地,該記錄相關信息的步驟可以在步驟406之后執行或者與步驟406同時執行。在一個實施例中,所記錄的相關信息可以包括主題頁面的下載和/或更新時間、 在主題頁面中的下載/更新位置、每次下載時主題的回復數量等。通過以上的描述可以看出,根據上述技術方案,針對具有多個結構相似的網頁的網站,可以進行高效和自動的網頁下載。除了以上所描述的針對具有多個結構相似的網頁的網站進行網頁下載的方法以外,根據本發明的實施例,還相應地提供了與所述方法對應的針對具有多個結構相似的網頁的網站進行網頁下載的裝置。圖7是示出了根據本發明的一個實施例的網頁下載裝置的示意性結構圖。如圖7所示,網頁下載裝置700可以包括選取單元702、模板生成單元704、下載更新單元706。選取單元702被配置成根據網頁的文本特征和/或結構特征從多個網頁中選取至少一個列表頁面。模板生成單元704被配置成生成列表頁面模板。具體來說,可以根據選出的列表頁面中的至少一個來生成列表頁面模板。下載更新單元706被配置成下載和/或更新主題頁面。具體來說,可以利用所生成的列表頁面模板和所獲得的每個列表頁面來進行下載和/或更新。圖8示出了根據本發明一個實施例的模板生成單元的示意性結構圖。如圖8所示,模板生成單元可以包括樹結構構建單元802、節點選擇單元804、路徑生成單元806、路徑保存單元808。其中,樹結構構建單元802被配置成基于列表頁面中的至少一個來構建列表頁面的DOM樹結構。例如,可以利用DOM技術來解析列表頁面,從而建立列表頁面的DOM樹結構。節點選擇單元804被配置成選擇列表頁面的DOM樹結構中的一個或多個包含感興趣的信息的節點。路徑生成單元806被配置成從相應的DOM樹結構中獲取所選擇的節點的路徑信息。在一個實施例中,節點的路徑信息可以是字符串形式的。路徑保存單元808被配置成保存所選擇各節點的路徑信息,從而生成列表頁面模板。當生成了所有所選擇節點的路徑信息后,也就獲得了包括這些節點的路徑信息的列表頁面模板。圖9示出了根據本發明一個實施例的下載更新單元的示意性結構圖。如圖9所述,下載更新單元包括信息提取單元902、判斷單元904和執行單元906。信息提取單元902被配置成基于列表頁面模板從列表頁面提取相關信息。具體來說,可以基于列表頁面模板中的路徑信息從列表頁面中提取出用于網頁下載和/或更新的相關信息。判斷單元904被配置成判斷列表頁面中是否存在新主題或者列表頁面中是否存在新回復(即列表頁面中的主題是否有更新)。具體來說,判斷單元904根據提取出的與主題有關的信息來判斷列表頁面中是否存在新主題或者列表頁面中的主題是否有更新。執行單元906被配置成對列表頁面中的主題頁面進行下載和/或更新。具體來說, 在列表頁面中的主題存在更新(即出現新回復)或列表頁面中出現新主題的情況下,執行單元906更新該主題的主題頁面或下載該新主題的主題頁面。可以看出,圖7至圖9所示的裝置可以相應地實施以上結合圖1至圖6所描述的方法。因此,此處不再重復描述圖7至圖9所示的裝置在執行相應方法時的具體操作過程, 以使說明書簡潔。上述裝置中各個組成模塊、單元可通過軟件、固件、硬件或其組合的方式進行配置。配置可使用的具體手段或方式為本領域技術人員所熟知,在此不再贅述。在通過軟件或固件實現的情況下,從存儲介質或網絡向具有專用硬件結構的計算機(例如圖10所示的通用計算機1000)安裝構成該軟件的程序,該計算機在安裝有各種程序時,能夠執行各種功能等。在圖10中,中央處理單元(CPU) 1001根據只讀存儲器(ROM) 1002中存儲的程序或從存儲部分1008加載到隨機存取存儲器(RAM) 1003的程序執行各種處理。在RAM 1003中, 也根據需要存儲當CPU 1001執行各種處理等等時所需的數據。CPU 100UROM 1002和RAM 1003經由總線1004彼此連接。輸入/輸出接口 1005也連接到總線1004。下述部件連接到輸入/輸出接口 1005 輸入部分1006(包括鍵盤、鼠標等等)、輸出部分1007(包括顯示器,比如陰極射線管(CRT)、液晶顯示器(LCD)等,和揚聲器等)、存儲部分1008 (包括硬盤等)、通信部分1009 (包括網絡接口卡比如LAN卡、調制解調器等)。 通信部分1009經由網絡比如因特網執行通信處理。根據需要,驅動器1010也可連接到輸入/輸出接口 1005。可拆卸介質1011比如磁盤、光盤、磁光盤、半導體存儲器等等根據需要被安裝在驅動器1010上,使得從中讀出的計算機程序根據需要被安裝到存儲部分1008中。在通過軟件實現上述系列處理的情況下,從網絡比如因特網或存儲介質比如可拆卸介質1011安裝構成軟件的程序。本領域的技術人員應當理解,這種存儲介質不局限于圖10所示的其中存儲有程序、與設備相分離地分發以向用戶提供程序的可拆卸介質1011。可拆卸介質1011的例子包含磁盤(包含軟盤(注冊商標))、光盤(包含光盤只讀存儲器(⑶-ROM)和數字通用盤 (DVD))、磁光盤(包含迷你盤(MD)(注冊商標))和半導體存儲器。或者,存儲介質可以是 ROM 1002、存儲部分1008中包含的硬盤等等,其中存有程序,并且與包含它們的設備一起被分發給用戶。本發明還提出一種存儲有機器可讀取的指令代碼的程序產品。所述指令代碼由機器讀取并執行時,可執行上述根據本發明實施例的方法。相應地,用于承載上述存儲有機器可讀取的指令代碼的程序產品的存儲介質也包括在本發明的公開中。所述存儲介質包括但不限于軟盤、光盤、磁光盤、存儲卡、存儲棒等寸。最后,還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。此外,在沒有更多限制的情況下,由語句“包括一個......”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。以上雖然結合附圖詳細描述了本發明的實施例,但是應當明白,上面所描述的實施方式只是用于說明本發明,而并不構成對本發明的限制。對于本領域的技術人員來說,可以對上述實施方式作出各種修改和變更而沒有背離本發明的實質和范圍。因此,本發明的范圍僅由所附的權利要求及其等效含義來限定。根據上述描述,可以看出本發明提供了以下的技術方案。方案1. 一種網頁下載的方法,包括選取步驟,從多個網頁中選取至少一個列表頁面;模板生成步驟,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;下載更新步驟,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。方案2.根據方案1所述的網頁下載的方法,其中所述選取步驟包括根據網頁的文本特征和/或結構特征來判斷網頁是否是列表頁面。方案3.根據方案2所述的網頁下載的方法,其中所述文本特征包括下述特征中的至少一個網頁標題、網頁自身的URL中的特征標識符、網頁中的URL中的特征標識符、網頁編號。方案4.根據方案2所述的網頁下載的方法,其中所述結構特征包括下述特征中的至少一個包含大量的時間信息、包含大量的鏈接信息、URL文本占頁面文本的比率大、結
構重復度高。方案5.根據方案1-4中之一所述的網頁下載的方法,其中所述模板生成步驟包括基于所述至少一個列表頁面中的一個或多個來建立文檔對象模型樹;選擇所述文檔對象模型樹中的一個或多個節點;從文檔對象模型樹中提取所選擇的節點的路徑信息;以及保存各節點的路徑信息以形成所述列表頁面模板。方案6.根據方案1-4中之一所述的網頁下載的方法,其中所述下載更新步驟包括信息提取步驟,基于所述列表頁面模板從列表頁面提取與主題頁面有關的信息;判斷步驟,基于所述與主題頁面有關的信息來判斷是否出現新主題和/或已有主題的主題頁面是否有更新;執行步驟,基于判斷步驟的結果來下載所述新主題的主題頁面和/或更新所述已有主題的主題頁面。方案7.根據方案6所述的網頁下載的方法,其中所述與主題頁面有關的信息包括主題的標題和主題的首次發表時間中的至少一個,主題的回復數量和主題的最新回復時間中的至少一個,以及主題的第一主題頁面的URL。方案8.根據方案7所述的網頁下載的方法,其中所述執行步驟還包括,在下載和/ 或更新結束時,記錄主題頁面的下載和/或更新時間、在主題頁面中的下載/更新位置、主題的回復數量。方案9.根據方案8所述的網頁下載的方法,其中所述判斷步驟包括根據主題的標題或根據主題的首次發表時間和上一次的下載和/或更新時間來判斷是否存在新主題; 以及,根據主題的最新回復時間和上一次下載和/或更新時的下載和/或更新時間或根據主題的回復數量和上一次下載和/或更新時的回復數量來判斷已有主題的主題頁面中是否存在更新。方案10.根據方案9所述的網頁下載的方法,其中所述執行步驟包括如果存在新主題,則基于所述新主題的第一主題頁面的URL來下載所述新主題的主題頁面;和/或如果已有主題的主題頁面中存在更新,則從所述已有主題的主題頁面上一次下載和/或更新時的下載/更新位置起更新所述已有主題的主題頁面。方案11. 一種網頁下載的裝置,包括選取單元,從多個網頁中選取至少一個列表頁面;模板生成單元,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;下載更新單元,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。方案12.根據方案11所述的網頁下載的裝置,其中所述選取單元被配置成根據網頁的文本特征和/或結構特征來判斷網頁是否是列表頁面。方案13.根據方案12所述的網頁下載的裝置,其中所述文本特征包括下述特征中的至少一個網頁標題、網頁自身的URL中的特征標識符、網頁中的URL中的特征標識符、網
頁編號。方案14.根據方案12所述的網頁下載的裝置,其中所述結構特征包括下述特征中的至少一個包含大量的時間信息、包含大量的鏈接信息、URL文本占頁面文本的比率大、
結構重復度高。方案15.根據方案11-14中之一所述的網頁下載的裝置,其中所述模板生成單元包括樹結構構建單元,基于所述至少一個列表頁面中的一個或多個來建立文檔對象模型樹;節點選擇單元,選擇所述文檔對象模型樹中的一個或多個節點;路徑生成單元,從文檔對象模型樹中提取所選擇的節點的路徑信息;以及路徑保存單元,保存各節點的路徑信息以形成所述列表頁面模板。方案16.根據方案11-14中之一所述的網頁下載的裝置,其中所述下載更新單元包括信息提取單元,基于所述列表頁面模板從列表頁面提取與主題頁面有關的信息;判斷單元,基于所述與主題頁面有關的信息來判斷是否出現新主題和/或已有主題的主題頁面是否有更新;執行單元,基于判斷步驟的結果來下載所述新主題的主題頁面和/或更新所述已有主題的主題頁面。方案17.根據方案16所述的網頁下載的裝置,其中所述與主題頁面有關的信息包括主題的標題和主題的首次發表時間中的至少一個,主題的回復數量和主題的最新回復時間中的至少一個,以及主題的第一主題頁面的URL。方案18.根據方案17所述的網頁下載的裝置,其中所述執行單元還被配置成,在下載和/或更新結束后,記錄主題頁面的下載和/或更新時間、在主題頁面中的下載/更新位置、主題的回復數量。方案19.根據方案18所述的網頁下載的裝置,其中所述判斷單元被配置成根據主題的標題或根據主題的首次發表時間和上一次的下載和/或更新時間來判斷是否存在新主題;以及,根據主題的最新回復時間和上一次下載和/或更新時的下載和/或更新時間或根據主題的回復數量和上一次下載和/或更新時的回復數量來判斷已有主題的主題頁面中是否存在更新。方案20.根據方案19所述的網頁下載的裝置,其中所述執行單元被配置成如果存在新主題,則基于所述新主題的第一主題頁面的URL來下載所述新主題的主題頁面;和/ 或如果已有主題的主題頁面中存在更新,則從所述已有主題的主題頁面上一次下載和/或更新時的下載/更新位置起更新所述已有主題的主題頁面。方案21. —種程序產品,該程序產品包括機器可執行的指令,當在信息處理設備上執行所述指令時,所述指令使得所述信息處理設備執行如方案1至10中任一項所述的方法。方案22. —種存儲介質,該存儲介質包括機器可讀的程序代碼,當在信息處理設備上執行所述程序代碼時,所述程序代碼使得所述信息處理設備執行如方案1至10中任一項所述的方法。
權利要求
1.一種網頁下載的方法,包括選取步驟,從多個網頁中選取至少一個列表頁面;模板生成步驟,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;以及下載更新步驟,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。
2.根據權利要求1所述的網頁下載的方法,其中所述選取步驟包括根據網頁的文本特征和/或結構特征來判斷網頁是否是列表頁面。
3.根據權利要求2所述的網頁下載的方法,其中所述文本特征包括下述特征中的至少一個網頁標題、網頁自身的URL中的特征標識符、網頁中的URL中的特征標識符、網頁編號。
4.根據權利要求2所述的網頁下載的方法,其中所述結構特征包括下述特征中的至少一個包含大量的時間信息、包含大量的鏈接信息、URL文本占頁面文本的比率大、結構重復度高。
5.根據權利要求1-4中之一所述的網頁下載的方法,其中所述下載更新步驟包括信息提取步驟,基于所述列表頁面模板從列表頁面提取與主題頁面有關的信息;判斷步驟,基于所述與主題頁面有關的信息來判斷是否出現新主題和/或已有主題的主題頁面是否有更新;執行步驟,基于判斷步驟的結果來下載所述新主題的主題頁面和/或更新所述已有主題的主題頁面。
6.根據權利要求5所述的網頁下載的方法,其中所述與主題頁面有關的信息包括主題的標題和主題的首次發表時間中的至少一個,主題的回復數量和主題的最新回復時間中的至少一個,以及主題的第一主題頁面的URL。
7.根據權利要求6所述的網頁下載的方法,其中所述執行步驟還包括,在下載和/或更新結束時,記錄主題頁面的下載和/或更新時間、在主題頁面中的下載/更新位置、主題的回復數量。
8.根據權利要求7所述的網頁下載的方法,其中所述判斷步驟包括根據主題的標題或根據主題的首次發表時間和上一次的下載和/或更新時間來判斷是否存在新主題;以及,根據主題的最新回復時間和上一次下載和/或更新時的下載和/或更新時間或根據主題的回復數量和上一次下載和/或更新時的回復數量來判斷已有主題的主題頁面中是否存在更新。
9.根據權利要求8所述的網頁下載的方法,其中所述執行步驟包括如果存在新主題, 則基于所述新主題的第一主題頁面的URL來下載所述新主題的主題頁面;和/或如果已有主題的主題頁面中存在更新,則從所述已有主題的主題頁面上一次下載和/或更新時的下載/更新位置起更新所述已有主題的主題頁面。
10.一種網頁下載的裝置,包括選取單元,從多個網頁中選取至少一個列表頁面;模板生成單元,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;以及下載更新單元,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。
全文摘要
本發明提供了網頁下載的方法和裝置。所述方法包括選取步驟,從多個網頁中選取至少一個列表頁面;模板生成步驟,根據所述至少一個列表頁面中的一個或多個來生成列表頁面模板;下載更新步驟,利用所述列表頁面模板和所述至少一個列表頁面來下載和/或更新所述至少一個列表頁面中所包含的主題的主題頁面。根據本發明的網頁下載的方法和裝置,可以針對具有多個結構相似的網頁的網站進行高效、自動的網頁下載。
文檔編號G06F17/30GK102163203SQ201010120118
公開日2011年8月24日 申請日期2010年2月24日 優先權日2010年2月24日
發明者于浩, 孟遙, 王主龍, 王新文 申請人:富士通株式會社