網頁內容提取方法及裝置的制造方法【專利摘要】本發明公開了一種網頁內容提取方法,包括以下步驟:S1、獲取目標網頁;S2、判斷所述目標網頁中是否存在超鏈接;S3、若是,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行S2,直到滿足預置退出條件時退出;S4、根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。本發明還公開了一種網頁內容提取裝置。本發明能夠精確獲得目標網頁上用戶所需內容,減少用戶查找網頁內容的時間消耗,提高信息獲取效率。【專利說明】網頁內容提取方法及裝置
技術領域:
[0001]本發明涉及通信
技術領域:
,尤其涉及網頁內容提取方法及裝置。【
背景技術:
】[0002]隨著現今大數據時代的到來,用戶需要從海量的網絡資源中獲取所需信息并不是十分容易,盡管搜索引擎實現了對海量網絡資源的搜索與提取,但搜索結果仍然巨大,從而導致用戶需要花費更多的時間與精力去進行篩選所需信息。如果用戶搜索目標比較明確,比如集中在某一個或少數幾個網站,盡管該類情形下需要查找篩選的數據并不多,但用戶在網頁上通過手動采集數據則仍然比較費時,數據提取效率依舊不高。【
發明內容】[0003]本發明的主要目的在于提供一種網頁內容提取方法及裝置,旨在解決如何在保證網頁內容提取準確的同時,提高網頁內容提取效率的技術問題。[0004]為實現上述目的,本發明一種網頁內容提取方法,所述網頁內容提取方法包括以下步驟:[0005]S1、獲取目標網頁;[0006]S2、判斷所述目標網頁中是否存在超鏈接;[0007]S3、若是,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行S2,直到滿足預置退出條件時退出;[0008]S4、根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。[0009]優選地,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種。[0010]優選地,所述根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容之后包括:[0011]根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。[0012]優選地,所述根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容之后還包括:[0013]根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;[0014]編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。[0015]優選地,所述網頁內容提取方法還包括:[0016]在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。[0017]進一步地,為實現上述目的,本發明還提供一種網頁內容提取裝置,所述網頁內容提取裝置包括:[0018]第一獲取模塊,用于獲取目標網頁;[0019]判斷模塊,用于判斷所述目標網頁中是否存在超鏈接;[0020]第二獲取模塊,用于若所述目標網頁中存在超鏈接,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行所述判斷模塊,直到滿足預置退出條件時退出;[0021]提取模塊,用于根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。[0022]優選地,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種。[0023]優選地,所述網頁內容提取裝置還包括:[0024]數據處理模塊,用于根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。[0025]優選地,所述網頁內容提取裝置還包括:[0026]結構化描述模塊,用于根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;[0027]編譯模塊,用于編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。[0028]優選地,所述網頁內容提取裝置還包括:[0029]地址替換模塊,用于在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。[0030]本發明中,通過獲取目標網頁以及各級子目標網頁,并通過預先設定的內容采集規則,對網頁內容做進一步的提取,從而精確獲得用戶所需內容,減少用戶查找網頁內容的時I司消耗,提尚?目息獲取效率。【附圖說明】[0031]圖1為本發明網頁內容提取方法第一實施例的流程示意圖;[0032]圖2為本發明網頁內容提取方法第二實施例的流程示意圖;[0033]圖3為本發明網頁內容提取方法第三實施例的流程示意圖;[0034]圖4為本發明網頁內容提取裝置第一實施例的功能模塊示意圖;[0035]圖5為本發明網頁內容提取裝置第二實施例的功能模塊示意圖;[0036]圖6為本發明網頁內容提取裝置第三實施例的功能模塊示意圖;[0037]圖7為本發明網頁內容提取裝置第四實施例的功能模塊示意圖。[0038]本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。【具體實施方式】[0039]應當理解,此處所描述的具體實施例僅用以解釋本發明,并不用于限定本發明。[0040]參照圖1,圖1為本發明網頁內容提取方法第一實施例的流程示意圖。本實施例中,所述網頁內容提取方法包括:[0041]步驟SI,獲取目標網頁;[0042]本實施例中,目標網頁或子目標網頁具體是指HTML格式文件,也即未被編譯的網頁。在獲取目標網頁之前,網頁內容提取裝置預先設置目標網頁所對應的URL,并發送至對應的服務器,從而獲得服務器所返回的HTML格式的網頁。此外,本實施例中的目標網頁可以是任意的網頁,比如網站的主網頁,或者主網頁下的其他分級網頁。[0043]步驟S2,判斷所述目標網頁中是否存在超鏈接;[0044]通常,為更好布局網頁內容顯示,網頁編輯人員都會在網頁中設置多個超鏈接,從而可以更為簡潔方便地完成網頁內容的布局,因此,一個網頁所包含的內容不僅包含當前一級的網頁內容,還包含下一級的網頁內容,具體通過超鏈接的方式打開下一級的網頁。因此,本實施例中,需要進一步判斷當前目標網頁上是否存在打開下一級網頁的超鏈接。[0045]步驟S3,若是,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行S2,直到滿足預置退出條件時退出;[0046]本實施例中,通過循環遞歸的方式,獲取目標網頁下的所有各級子目標網頁,從而最大限度地擴大網頁內容的提取范圍。當然,考慮到可能每一個子目標網頁都有可能存在超鏈接的情形,因此,本實施例中需要設置相應的退出條件,例如設置循環遞歸的次數,比如達到兩次時即退出等。[0047]步驟S4,根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。[0048]本實施例中,對于內容采集規則設定不限,可選的,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種中的一種或多種。[0049]例如,<img>標簽定義圖片,〈video〉標簽定義視頻,〈table〉定義表格等,也即獲取目標網頁或子目標中對應的圖片、視頻、表格等內容。[0050]例如,以關鍵字或關鍵詞作為采集規則,例如關鍵詞為“ABC”,則遍歷網頁源代碼,提取關鍵詞“ABC1。[0051]或者例如,也可以設置目標內容的正則表達式(正則表達式使用單個字符串來描述、匹配一系列符合某個句法規則的字符串),正則表達式由一些普通字符和一些元字符組成。普通字符包括大小寫的字母和數字,而元字符則具有特殊的含義,例如元字符“+”用于匹配I個或多個正好在它之前的那個字符,例如正則表達式9+匹配9、99、999等。[0052]本實施例中,獲取目標網頁以及各級子目標網頁,并通過預先設定的內容采集規貝1J,對網頁內容做進一步的提取,從而精確獲得用戶所需內容,減少用戶查找網頁內容的時I司消耗,提尚?目息獲取效率。[0053]參照圖2,圖2為本發明網頁內容提取方法第二實施例的流程示意圖。基于上述方法第一實施例,本實施例中,上述步驟S4之后包括:[0054]步驟S5,根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。[0055]本實施例中,在提取網頁內容的同時,為便于用戶理解和閱讀,需要進一步對提取的網頁內容進行數據處理,同時,本實施例中,對于數據處理規則不限,具體根據實際需要進行設置。[0056]例如,進行標簽過濾處理。由于網頁源代碼的生成格式的多樣性,提取的網頁中可能會存在某些無關的標簽,比如空格標簽、字體大小顏色標簽等,因此,為便于用戶后續閱讀,需要對標簽進行過濾。通常標簽的格式為:〈>,因此可根據標簽的格式進行標簽過濾處理。[0057]例如進行數據格式轉換。比如字體格式(顏色、大小)轉換、繁體簡體字轉換、中英文轉換、時間格式轉換等。[0058]例如進行下載文件的探測。比如,某些超鏈接實際為下載文件的超鏈接,對于此類下載文件的超鏈接,可以保留,以供用戶自己根據實際需要進行處理。[0059]本實施例中,通過對提取的網頁內容進行數據處理,從而使處理后的網頁內容更符合用戶的使用或閱讀需求,提升用戶使用體驗。[0060]參照圖3,圖3為本發明網頁內容提取方法第三實施例的流程示意圖。基于上述方法第一實施例,本實施例中,上述步驟S4之后還包括:[0061]步驟S61,根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;[0062]步驟S62,編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。[0063]由于是從目標網頁的源代碼中提取的網頁內容,因此并不適合直接顯示給用戶。本實施例中,需要進一步對網頁進行顯示處理,具體采用可擴展標記語言XML對提取的網頁內容進行結構化描述,從而得到對應的XML文件,然后再編譯XML文件,即可得到主要為所提取的網頁內容的以供顯示給用戶的新網頁。[0064]當然,基于用戶閱讀要求,比如新網頁的布局(內容對應為提取到的網頁內容),因此,根據提取的網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,來進行新網頁的網頁格式布局,提升用戶閱讀體驗。[0065]進一步地,在本發明網頁內容提取方法一實施例中,網頁內容提取方法還包括:在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。[0066]通常,基于網站安全等因素的考慮,網站服務器都會限制同一IP的訪問次數,因此,本實施例中,為避免導致訪問IP地址被限制,因此,獲取目標網頁或子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取目標網頁或子目標網頁,從而得以繼續進行目標網頁的獲取以及網頁內容的提取。[0067]參照圖4,圖4為本發明網頁內容提取裝置第一實施例的功能模塊示意圖。本實施例中,所述網頁內容提取裝置包括:[0068]第一獲取模塊10,用于獲取目標網頁;[0069]本實施例中,目標網頁或子目標網頁具體是指HTML格式文件,也即未被編譯的網頁。在獲取目標網頁之前,網頁內容提取裝置預先設置目標網頁所對應的URL,并發送至對應的服務器,從而獲得服務器所返回的HTML格式的網頁。此外,本實施例中的目標網頁可以是任意的網頁,比如網站的主網頁,或者主網頁下的其他分級網頁。[0070]判斷模塊20,用于判斷所述目標網頁中是否存在超鏈接;[0071]通常,為更好布局網頁內容顯示,網頁編輯人員都會在網頁中設置多個超鏈接,從而可以更為簡潔方便地完成網頁內容的布局,因此,一個網頁所包含的內容不僅包含當前一級的網頁內容,還包含下一級的網頁內容,具體通過超鏈接的方式打開下一級的網頁。因此,本實施例中,需要進一步判斷當前目標網頁上是否存在打開下一級網頁的超鏈接。[0072]第二獲取模塊30,用于若所述目標網頁中存在超鏈接,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行所述判斷模塊;[0073]本實施例中,通過循環遞歸的方式,獲取目標網頁下的所有各級子目標網頁,從而最大限度地擴大網頁內容的提取范圍。當然,考慮到可能每一個子目標網頁都有可能存在超鏈接的情形,因此,本實施例中需要設置相應的退出條件,例如設置循環遞歸的次數,比如達到兩次時即退出等。[0074]提取模塊40,用于根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。[0075]本實施例中,對于內容采集規則設定不限,可選的,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種中的一種或多種。[0076]例如,<img>標簽定義圖片,〈video〉標簽定義視頻,〈table〉定義表格等,也即獲取目標網頁或子目標中對應的圖片、視頻、表格等內容。[0077]例如,以關鍵字或關鍵詞作為采集規則,例如關鍵詞為“ABC”,則遍歷網頁源代碼,提取關鍵詞“ABC1。[0078]或者例如,也可以設置目標內容的正則表達式(正則表達式使用單個字符串來描述、匹配一系列符合某個句法規則的字符串),正則表達式由一些普通字符和一些元字符組成。普通字符包括大小寫的字母和數字,而元字符則具有特殊的含義,例如元字符“+”用于匹配I個或多個正好在它之前的那個字符,例如正則表達式9+匹配9、99、999等。[0079]本實施例中,獲取目標網頁以及各級子目標網頁,并通過預先設定的內容采集規貝1J,對網頁內容做進一步的提取,從而精確獲得用戶所需內容,減少用戶查找網頁內容的時I司消耗,提尚?目息獲取效率。[0080]參照圖5,圖5為本發明網頁內容提取裝置第二實施例的功能模塊示意圖。基于上述裝置第一實施例,本實施例中,所述網頁內容提取裝置還包括:[0081]數據處理模塊50,用于根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。[0082]本實施例中,在提取網頁內容的同時,為便于用戶理解和閱讀,需要進一步對提取的網頁內容進行數據處理,同時,本實施例中,對于數據處理規則不限,具體根據實際需要進行設置。[0083]例如,進行標簽過濾處理。由于網頁源代碼的生成格式的多樣性,提取的網頁中可能會存在某些無關的標簽,比如空格標簽、字體大小顏色標簽等,因此,為便于用戶后續閱讀,需要對標簽進行過濾。通常標簽的格式為:〈>,因此可根據標簽的格式進行標簽過濾處理。[0084]例如進行數據格式轉換。比如字體格式(顏色、大小)轉換、繁體簡體字轉換、中英文轉換、時間格式轉換等。[0085]例如進行下載文件的探測。比如,某些超鏈接實際為下載文件的超鏈接,對于此類下載文件的超鏈接,可以保留,以供用戶自己根據實際需要進行處理。[0086]本實施例中,通過對提取的網頁內容進行數據處理,從而使處理后的網頁內容更符合用戶的使用或閱讀需求,提升用戶使用體驗。[0087]參照圖6,圖6為本發明網頁內容提取裝置第三實施例的功能模塊示意圖。基于上述裝置第一實施例,本實施例中,所述網頁內容提取裝置還包括:[0088]結構化描述模塊60,用于根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;[0089]編譯模塊70,用于編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。[0090]由于是從目標網頁的源代碼中提取的網頁內容,因此并不適合直接顯示給用戶。本實施例中,需要進一步對網頁進行顯示處理,具體采用可擴展標記語言XML對提取的網頁內容進行結構化描述,從而得到對應的XML文件,然后再編譯XML文件,即可得到主要為所提取的網頁內容的以供顯示給用戶的新網頁。[0091]當然,基于用戶閱讀要求,比如新網頁的布局(內容對應為提取到的網頁內容),因此,根據提取的網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,來進行新網頁的網頁格式布局,提升用戶閱讀體驗。[0092]參照圖7,圖7為本發明網頁內容提取裝置第四實施例的功能模塊示意圖。基于上述裝置第一實施例,本實施例中,所述網頁內容提取裝置還包括:[0093]地址替換模塊80,用于在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。[0094]通常,基于網站安全等因素的考慮,網站服務器都會限制同一IP的訪問次數,因此,本實施例中,為避免導致訪問IP地址被限制,因此,地址替換模塊80在獲取目標網頁或子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取目標網頁或子目標網頁,從而得以繼續進行目標網頁的獲取以及網頁內容的提取。[0095]以上僅為本發明的優選實施例,并非因此限制本發明的專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的
技術領域:
,均同理包括在本發明的專利保護范圍內。【主權項】1.一種網頁內容提取方法,其特征在于,所述網頁內容提取方法包括以下步驟:51、獲取目標網頁;52、判斷所述目標網頁中是否存在超鏈接;53、若是,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行S2,直到滿足預置退出條件時退出;54、根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。2.如權利要求1所述的網頁內容提取方法,其特征在于,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種。3.如權利要求1或2所述的網頁內容提取方法,其特征在于,所述根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容之后包括:根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。4.如權利要求1或2所述的網頁內容提取方法,其特征在于,所述根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容之后還包括:根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。5.如權利要求1所述的網頁內容提取方法,其特征在于,所述網頁內容提取方法還包括:在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。6.—種網頁內容提取裝置,其特征在于,所述網頁內容提取裝置包括:第一獲取模塊,用于獲取目標網頁;判斷模塊,用于判斷所述目標網頁中是否存在超鏈接;第二獲取模塊,用于若所述目標網頁中存在超鏈接,則獲取所述超鏈接所對應的子目標網頁,并以所述子目標網頁作為下一目標網頁,返回執行所述判斷模塊,直到滿足預置退出條件時退出;提取模塊,用于根據設定的內容采集規則,遍歷所述目標網頁與所述子目標網頁所對應的源代碼,并從所述源代碼中提取滿足所述內容采集規則的網頁內容。7.如權利要求6所述的網頁內容提取裝置,其特征在于,所述內容采集規則至少包括目標內容所對應的HTML標簽類型、目標內容所包含的字符或字符串、目標內容的正則表達式中的一種或多種。8.如權利要求6或7所述的網頁內容提取裝置,其特征在于,所述網頁內容提取裝置還包括:數據處理模塊,用于根據預置的數據處理規則,對所述網頁內容進行對應的數據處理,其中,所述數據處理至少包括標簽過濾處理、數據格式轉換、下載文件探測中的一種或多種。9.如權利要求6或7所述的網頁內容提取裝置,其特征在于,所述網頁內容提取裝置還包括:結構化描述模塊,用于根據所述網頁內容所對應的HTML標簽類型及預置的XML文件生成格式,采用可擴展標記語言XML對所述網頁內容進行結構化描述,得到對應的XML文件;編譯模塊,用于編譯所述XML文件,并顯示編譯后所生成的包含有所述網頁內容的頁面。10.如權利要求6所述的網頁內容提取裝置,其特征在于,所述網頁內容提取裝置還包括:地址替換模塊,用于在獲取所述目標網頁或所述子目標網頁失敗時,通過HTTP二級代理服務器進行IP地址替換,并以新的IP地址重新獲取所述目標網頁或所述子目標網頁。【文檔編號】G06F17/30GK105938496SQ201610370263【公開日】2016年9月14日【申請日】2016年5月27日【發明人】張銳【申請人】深圳市永興元科技有限公司