基于網(wǎng)頁的信息獲取方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及信息處理技術(shù)領(lǐng)域,尤其涉及基于網(wǎng)頁的信息獲取方法及裝置。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,人們越來越多的通過瀏覽網(wǎng)頁來獲取各種信息。由于網(wǎng)絡(luò)中存在海量的網(wǎng)頁信息,因此在現(xiàn)有技術(shù)中,通??梢越柚阉饕?、網(wǎng)頁信息獲取工具等輔助工具,從大量的網(wǎng)頁中提取用戶需要的信息。但是,這些輔助工具通常只能對靜態(tài)頁面的信息進(jìn)行抓取,而無法獲取動態(tài)交互網(wǎng)頁中那些需要人工觸發(fā)才能得到的資源信息(例如,文件下載鏈接)。
【發(fā)明內(nèi)容】
[0003]鑒于現(xiàn)有技術(shù)中的上述缺陷或不足,期望能夠提供一種從動態(tài)網(wǎng)頁中得到資源信息的方案。為了實(shí)現(xiàn)上述一個或多個目的,本申請?zhí)峁┝嘶诰W(wǎng)頁的信息獲取方法及裝置。
[0004]第一方面,本申請?zhí)峁┝艘环N基于網(wǎng)頁的信息獲取方法,包括:獲取所述網(wǎng)頁的源代碼;檢測所述源代碼中是否包括交互式代碼;若是,則針對所述交互式代碼執(zhí)行相應(yīng)的觸發(fā)操作;從響應(yīng)于所述觸發(fā)操作的信息中獲取所述網(wǎng)頁中的資源信息。
[0005]第二方面,本申請?zhí)峁┝艘环N基于網(wǎng)頁的信息獲取裝置,包括:獲取模塊,用于獲取所述網(wǎng)頁的源代碼;檢測模塊,用于檢測所述源代碼中是否包括交互式代碼;觸發(fā)模塊,用于若所述源代碼中包括所述交互式代碼,則針對所述交互式代碼執(zhí)行相應(yīng)的觸發(fā)操作;響應(yīng)模塊,用于從響應(yīng)于所述觸發(fā)操作的信息中獲取所述網(wǎng)頁中的資源信息。
[0006]本申請?zhí)峁┑幕诰W(wǎng)頁的信息獲取方法及裝置,可以針對網(wǎng)頁源代碼中所包括的交互式代碼,執(zhí)行相應(yīng)的觸發(fā)操作,以便從觸發(fā)操作的響應(yīng)信息中得到隱藏于網(wǎng)頁中的資源信息。通過針對交互式代碼模擬用戶操作,可以獲取網(wǎng)頁中隱藏的資源信息,從而提高了獲取網(wǎng)頁中各類信息的能力。
【附圖說明】
[0007]通過閱讀參照以下附圖所作的對非限制性實(shí)施例所作的詳細(xì)描述,本申請的其它特征、目的和優(yōu)點(diǎn)將會變得更明顯:
[0008]圖1是本申請基于網(wǎng)頁的信息獲取方法的一個實(shí)施例的流程圖;
[0009]圖2是本申請基于網(wǎng)頁的信息獲取方法的另一個實(shí)施例的流程圖;
[0010]圖3是本申請基于網(wǎng)頁的信息獲取方法的另一個實(shí)施例的流程圖;
[0011]圖4是本申請基于網(wǎng)頁的信息獲取裝置的一個實(shí)施例的功能模塊構(gòu)架示意圖;
[0012]圖5是適于用來實(shí)現(xiàn)本申請實(shí)施例的終端設(shè)備或服務(wù)器的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0013]下面結(jié)合附圖和實(shí)施例對本申請作進(jìn)一步的詳細(xì)說明。可以理解的是,此處所描述的具體實(shí)施例僅僅用于解釋相關(guān)發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
[0014]需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本申請。
[0015]請參考圖1,其示出了本申請基于網(wǎng)頁的信息獲取方法的一個實(shí)施例的流程100。本實(shí)施例主要以該方法應(yīng)用于能進(jìn)行網(wǎng)頁瀏覽的終端中來舉例說明,該終端可以包括智能手機(jī)、平板電腦、電子書閱讀器、MP4 (Moving Picture Experts Group Aud1 Layer IV,動態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面4)播放器、膝上型便攜計(jì)算機(jī)、臺式計(jì)算機(jī)和智能穿戴式設(shè)備等等。本實(shí)施例的基于網(wǎng)頁的信息獲取方法,包括以下步驟:
[0016]如圖1所示,在步驟101中,獲取網(wǎng)頁的源代碼。
[0017]網(wǎng)頁可以看作是承載網(wǎng)絡(luò)中所有信息的載體,是萬維網(wǎng)中的一“頁”,其可以保存于任意一臺計(jì)算機(jī)中,并通過網(wǎng)頁瀏覽器來進(jìn)行訪問。網(wǎng)頁通常可以被分為靜態(tài)網(wǎng)頁和動態(tài)網(wǎng)頁兩種類型。靜態(tài)網(wǎng)頁通常由html (超級文本標(biāo)記語言)代碼生成,其頁面的內(nèi)容和顯示效果基本上不會發(fā)生變化。動態(tài)網(wǎng)頁,是指跟靜態(tài)網(wǎng)頁相對的、一種以數(shù)據(jù)庫技術(shù)為基礎(chǔ)的網(wǎng)頁編程技術(shù)。在動態(tài)網(wǎng)頁中,雖然頁面的源代碼沒有改變,但是顯示的內(nèi)容卻是可以隨著時(shí)間、環(huán)境或者數(shù)據(jù)庫操作的結(jié)果而發(fā)生改變。靜態(tài)網(wǎng)頁的網(wǎng)址后綴包括htm、html,shtml和xml等,而是見動態(tài)網(wǎng)頁的網(wǎng)址以.aspx、.asp、.jsp、.php、.per1、.cgi等形式為后綴,并且在網(wǎng)址中有一個標(biāo)志性的符號一 “? ”。
[0018]在本實(shí)施例中,可以利用現(xiàn)有技術(shù)中的WebClient、WebRequest和HttpffebRequest等方式獲取當(dāng)前待處理的網(wǎng)頁的源代碼。對于靜態(tài)網(wǎng)頁來說,此時(shí)獲取的源代碼就是網(wǎng)頁的全部源代碼。而對于動態(tài)網(wǎng)頁來說,此時(shí)獲取的源代碼僅是當(dāng)前顯示內(nèi)容所對應(yīng)的源碼,很可能不是動態(tài)網(wǎng)頁的全部源代碼。
[0019]接著,在步驟102中,檢測源代碼中是否包括交互式代碼。
[0020]當(dāng)在上述步驟101中得到了網(wǎng)頁的源代碼后,可以進(jìn)一步檢測該源代碼中是否包括有交互式代碼。交互式代碼,顧名思義,就是可以實(shí)現(xiàn)交互功能的代碼。在網(wǎng)頁中,這一類代碼可以幫助用戶與網(wǎng)頁進(jìn)行交互。用戶可以對網(wǎng)頁進(jìn)行一些操作,網(wǎng)頁可以對這些操作進(jìn)行響應(yīng),然后將一些新的網(wǎng)頁內(nèi)容提供給用戶。在檢測源代碼中是否包括交互式代碼時(shí),可以根據(jù)源代碼的結(jié)構(gòu)、具體代碼內(nèi)容,來確定其是否包括交互式代碼。
[0021]可選地,交互式代碼可以包括表單代碼和/或觸發(fā)函數(shù)代碼。表單代碼可以是用于形成表單的代碼。表單在網(wǎng)頁中主要負(fù)責(zé)數(shù)據(jù)采集功能。表單可以接收用戶輸入的數(shù)據(jù),并在用戶進(jìn)行表單提交后,將這些數(shù)據(jù)提供給網(wǎng)頁服務(wù)器。觸發(fā)函數(shù)代碼可以是構(gòu)成觸發(fā)函數(shù)的代碼。觸發(fā)函數(shù)可以是一類需要經(jīng)過用戶的觸發(fā)操作(例如,點(diǎn)擊操作)才能執(zhí)行的函數(shù)。
[0022]繼而,在步驟103中,若是,則針對交互式代碼執(zhí)行相應(yīng)的觸發(fā)操作。
[0023]具體地,若在上述步驟102中檢測出網(wǎng)頁的源代碼中包括有交互式代碼,則可以進(jìn)一步對交互式代碼的語言、結(jié)構(gòu)、參數(shù)等內(nèi)容進(jìn)行分析,從而確定出執(zhí)行該交互式代碼所需要的觸發(fā)操作,然后通過機(jī)器模擬來執(zhí)行該觸發(fā)操作。例如,在一些網(wǎng)絡(luò)論壇中,某些用戶發(fā)布的文件被設(shè)置為“回復(fù)可見”,那么可以由計(jì)算機(jī)隨機(jī)生成一條回復(fù)信息,并將其回復(fù)在發(fā)布該文件的主題帖中。
[0024]最后,在步驟104中,從響應(yīng)于觸發(fā)操作的信息中獲取網(wǎng)頁中的資源信息。
[0025]具體地,當(dāng)在上述步驟103中針對交互式代碼執(zhí)行了相應(yīng)的觸發(fā)操作后,網(wǎng)頁服務(wù)器可以響應(yīng)于該觸發(fā)操作,并執(zhí)行相應(yīng)的交互式代碼。在交互式代碼被執(zhí)行后,網(wǎng)頁服務(wù)器可以對當(dāng)前網(wǎng)頁所顯示的內(nèi)容進(jìn)行更新,也可以直接返回一個新的網(wǎng)頁或浮動窗口。在更新后的網(wǎng)頁內(nèi)容,或者新打開的網(wǎng)頁或浮動窗口中,可以直接保存有網(wǎng)頁中的資源信息。在本實(shí)施例中,資源可以是指保存在網(wǎng)絡(luò)中的各種文件資源。資源信息可以是指與各類網(wǎng)頁資源相關(guān)的信息,例如,各類文件的下載鏈接、多媒體文件的播放地址或顯示于網(wǎng)頁中的文字和圖片等。
[0026]在本實(shí)施例的一個可選實(shí)現(xiàn)方式中,基于網(wǎng)頁的信息獲取方法還可以包括:基于資源信息的資源格式,對資源信息進(jìn)行篩選。在本實(shí)施例中,資源格式可以是指作為資源的文件的格式。用戶可以預(yù)先設(shè)定想要獲取的資源是什么文件格式,然后根據(jù)得到的資源信息對應(yīng)的資源格式,對其進(jìn)行進(jìn)一步的篩選。例如,當(dāng)資源信息是文件的下載鏈接時(shí),由于下載鏈接的最后一部分是文件名和文件格式,因此可以根據(jù)最后的文件格式對獲得的下載鏈接進(jìn)行篩選。當(dāng)用戶想要獲得網(wǎng)頁中的歌曲資源時(shí),可以預(yù)先設(shè)定下載鏈接以.mp3形式結(jié)尾,而對于那些以.exe形式結(jié)尾的可執(zhí)行文件的下載鏈接,就可以通過篩選進(jìn)行剔除。通過資源格式對資源信息進(jìn)行篩選,可以進(jìn)行一步提高從網(wǎng)頁中獲取資源信息的精度。
[0027]本實(shí)施例提供的基于網(wǎng)頁的信息獲取方法,可以針對網(wǎng)頁源代碼中所包括的交互式代碼,執(zhí)行相應(yīng)的觸發(fā)操作,以便從觸發(fā)操作的響應(yīng)信息中得到隱藏于網(wǎng)頁中的資源信息。通過針對交互式代碼模擬用戶操作,可以獲取網(wǎng)頁中隱藏的資源信息,從而提高了獲取網(wǎng)頁中各類信息的能力。
[0028]請進(jìn)一步參考圖2,其示出了本申請基于網(wǎng)頁的信息獲取方法的另一個實(shí)