国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種獲取流媒體鏈接地址的方法

      文檔序號(hào):7975178閱讀:290來(lái)源:國(guó)知局
      專利名稱:一種獲取流媒體鏈接地址的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)中流媒體資源下載技術(shù)領(lǐng)域,尤其涉及一 種獲取流媒體鏈接地址的方法。
      背景技術(shù)
      隨著多媒體技術(shù)的發(fā)展,網(wǎng)絡(luò)流媒體服務(wù)呈現(xiàn)快速增長(zhǎng)態(tài)勢(shì)。然而, 在許多情況下,限于網(wǎng)絡(luò)帶寬,用戶瀏覽網(wǎng)絡(luò)流媒體內(nèi)容時(shí),往往很不流 暢,經(jīng)常出現(xiàn)停頓,用戶希望將流媒體內(nèi)容下載,以獲得更好的欣賞效果。通用下載軟件需要根據(jù)資源的URL地址才可以進(jìn)行下載,然而當(dāng)前 流媒體服務(wù)和視頻博客網(wǎng)站上的資源地址通常不能直接獲取,本方法用于 提取這些流媒體資源的鏈接地址。通過(guò)觀察和分析,發(fā)現(xiàn)這些流媒體服務(wù)在流媒體服務(wù)中存在以下一些現(xiàn)象(1) 首先,網(wǎng)絡(luò)流媒體一般總是按照某種特定協(xié)議向客戶端提供流媒體內(nèi)容。比如,目前流行的視頻博客網(wǎng)站都是基于http協(xié)議。(2) 其次,絕大部分流媒體服務(wù)網(wǎng)站在與瀏覽器的會(huì)話中,需發(fā)送 流媒體內(nèi)容的鏈接地址。(3) 最后,流媒體內(nèi)容的鏈接地址包含流媒體格式、協(xié)議等特征字符串。利用流媒體會(huì)話、傳輸以及流媒體鏈接地址本身的特征,可以設(shè)計(jì)一 種高效的流媒體資源地址提取方法。發(fā)明內(nèi)容(一)要解決的技術(shù)問(wèn)題 有鑒于此,本發(fā)明的主要目的在于提供一種獲取流媒體鏈接地址的方 法,以獲取流媒體資源的鏈接地址,從而利用通用下載軟件下載需要的流 媒體內(nèi)容。(二)技術(shù)方案 為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的 一種獲取流媒體鏈接地址的方法,該方法包括A、 捕獲流媒體數(shù)據(jù)包;B、 判斷在捕獲的流媒體數(shù)據(jù)包中是否能夠檢測(cè)到流媒體內(nèi)容的擴(kuò)展 名,如果能夠檢測(cè)到,則執(zhí)行步驟C;否則,轉(zhuǎn)到步驟A;C、 在流媒體內(nèi)容擴(kuò)展名之前檢測(cè)特定的協(xié)議頭標(biāo)識(shí),從協(xié)議頭標(biāo)識(shí) 到擴(kuò)展名之間的字符串中獲取流媒體鏈接地址。所述步驟A包括Al、開(kāi)啟數(shù)據(jù)包捕捉線程;A2、打開(kāi)包含視頻內(nèi)容的鏈接地址;A3、數(shù)據(jù)包捕捉線程將捕捉到的數(shù)據(jù)包保存到文件;
      A4、關(guān)閉鏈接、關(guān)閉捕捉線程。所述步驟Al通過(guò)將網(wǎng)卡的工作模式設(shè)置為混雜模式實(shí)現(xiàn),采用網(wǎng)絡(luò) 嗅探程序捕捉經(jīng)過(guò)網(wǎng)卡的所有數(shù)據(jù)包;步驟A2中所述打開(kāi)包含視頻內(nèi)容的鏈接地址采用程序?qū)崿F(xiàn),或手動(dòng) 操作實(shí)現(xiàn);步驟A3中所述數(shù)據(jù)包捕捉線程在捕捉數(shù)據(jù)包時(shí),通過(guò)限制數(shù)據(jù)包捕 捉的最大長(zhǎng)度來(lái)提高地址提取的速度;步驟A3中所述數(shù)據(jù)包捕捉線程在捕捉數(shù)據(jù)包時(shí),通過(guò)限制數(shù)據(jù)包捕 捉的最大時(shí)延來(lái)提高地址體提取的速度。步驟B中所述檢測(cè)的流媒體內(nèi)容的擴(kuò)展名至少包括wmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3和wma多種流媒體擴(kuò)展名。步驟B中所述判斷包括在捕獲的流媒體數(shù)據(jù)包中,如果能夠檢測(cè)到wmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3禾卩wma中任一禾中擴(kuò)展 名,則能夠檢測(cè)到流媒體內(nèi)容的擴(kuò)展名。步驟C中所述特定的協(xié)議頭標(biāo)識(shí)至少包括"rtsp:〃"、"mms:〃"和"http:〃" 三種協(xié)議頭標(biāo)識(shí),步驟C中所述從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的字符串中獲 取流媒體鏈接地址包括檢測(cè)到協(xié)議頭標(biāo)識(shí)后,復(fù)制從協(xié)議頭標(biāo)識(shí)到擴(kuò)展 名之間的字符串作為流媒體鏈接地址;然后在該流媒體鏈接地址中再檢測(cè) 是否還包含協(xié)議頭標(biāo)識(shí),如果是,則去掉該內(nèi)部協(xié)議頭標(biāo)識(shí)之前的字符, 將剩余的字符串作為流媒體鏈接地址;并重復(fù)該檢測(cè)步驟,直至流媒體鏈 接地址中不再包含內(nèi)部協(xié)議頭標(biāo)識(shí)。該方法在步驟C之后進(jìn)一步包括D、 對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的流媒體 鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟E;E、 在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名,并轉(zhuǎn)到執(zhí)行步驟c。所述步驟E之后仍不能獲取有效流媒體鏈接地址,該方法進(jìn)一步包括F、 在流媒體內(nèi)容擴(kuò)展名之前依次檢測(cè)"GET"標(biāo)識(shí)和"Host:"標(biāo)識(shí),將 "GET"標(biāo)識(shí)與擴(kuò)展名之間的字符串存入字符串Sl,將"Host:"標(biāo)識(shí)之后的 字符串存入S2,將按照"http:〃S2/Sl"模式拼接獲得的字符串作為流媒體鏈 接地址。該方法進(jìn)一步包括G、 對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的流媒體 鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟H;H、 在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名,并轉(zhuǎn) 到執(zhí)行步驟F。所述對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證包括檢測(cè)獲取的流媒體鏈接地址中是否包含非法字符,所述非法字符包括ASCII碼中值小于 32或大于126的字符,如果流媒體鏈接地址中包含所述非法字符,則流媒 體鏈接地址為無(wú)效鏈接地址;否則,流媒體鏈接地址為有效鏈接地址。(三)有益效果 從上述技術(shù)方案可以看出,本發(fā)明具有以下有益效果 1、本發(fā)明通過(guò)利用流媒體瀏覽過(guò)程中傳輸?shù)牧髅襟w內(nèi)容的鏈接地
      所具有明顯特征信息,提出了一種獲取流媒體鏈接地址的方法,適用于 90%以上能夠通過(guò)網(wǎng)頁(yè)瀏覽的流媒體鏈接地址的提取,獲取了流媒體資源 的鏈接地址,從而有效解決了因無(wú)法獲得媒體內(nèi)容的鏈接地址而不能下載 的問(wèn)題。2、 本發(fā)明提供的這種獲取流媒體鏈接地址的方法,充分考慮了包含 流媒體內(nèi)容網(wǎng)頁(yè)的特征,有效減少了提取資源鏈接地址所需要網(wǎng)絡(luò)流量, 這保證了本方法在低帶寬環(huán)境中成功使用。3、 本發(fā)明提供的這種獲取流媒體鏈接地址的方法,充分考慮了流媒體內(nèi)容鏈接地址的特征,從而大大提高了流媒體資源鏈接地址提取的成功率。4、 本發(fā)明提供的這種獲取流媒體鏈接地址的方法,通過(guò)檢測(cè)數(shù)據(jù)包 中兩大類流媒體內(nèi)容鏈接地址類型,可以成功提取90%以上流媒體網(wǎng)站上 的流媒體資源的鏈接地址,進(jìn)一步提高了鏈接地址提取的效率。


      圖1為本發(fā)明提供的獲取流媒體鏈接地址總體技術(shù)方案的實(shí)現(xiàn)流程圖;圖2為依照本發(fā)明實(shí)施例獲取流媒體鏈接地址的方法流程圖。
      具體實(shí)施方式
      為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí) 施例,并參照附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。
      如圖1所示,圖1為本發(fā)明提供的獲取流媒體鏈接地址總體技術(shù)方案 的實(shí)現(xiàn)流程圖,該方法包括以下步驟 步驟101:捕獲流媒體數(shù)據(jù)包;步驟102:判斷在捕獲的流媒體數(shù)據(jù)包中是否能夠檢測(cè)到流媒體內(nèi)容 的擴(kuò)展名,如果能夠檢測(cè)到,則執(zhí)行步驟103;否則,轉(zhuǎn)到步驟101;步驟103:在流媒體內(nèi)容擴(kuò)展名之前檢測(cè)特定的協(xié)議頭標(biāo)識(shí),從協(xié)議 頭標(biāo)識(shí)到擴(kuò)展名之間的字符串中獲取流媒體鏈接地址。上述步驟101進(jìn)一步包括 步驟101h開(kāi)啟數(shù)據(jù)包捕捉線程;在本步驟中,所述開(kāi)啟數(shù)據(jù)包捕捉線程通過(guò)將網(wǎng)卡的工作模式設(shè)置為 混雜模式實(shí)現(xiàn),采用網(wǎng)絡(luò)嗅探程序捕捉經(jīng)過(guò)網(wǎng)卡的所有數(shù)據(jù)包;實(shí)施例 中,網(wǎng)絡(luò)嗅探程序選用開(kāi)源的winpcap工程作為數(shù)據(jù)包捕捉線程。步驟1012:打開(kāi)包含視頻內(nèi)容的鏈接地址;在本步驟中,所述打開(kāi)包含視頻內(nèi)容的鏈接地址可以采用程序?qū)崿F(xiàn),也可以手動(dòng)操作實(shí)現(xiàn)。步驟1013:數(shù)據(jù)包捕捉線程將捕捉到的數(shù)據(jù)包保存到文件; 在本步驟中,所述數(shù)據(jù)包捕捉線程在捕捉數(shù)據(jù)包時(shí),采用1MB作為數(shù)據(jù)包捕捉的最大長(zhǎng)度,15ms作為數(shù)據(jù)包捕捉的最大時(shí)延。步驟1014:關(guān)閉鏈接、關(guān)閉捕捉線程。步驟102中所述檢測(cè)的流媒體內(nèi)容的擴(kuò)展名至少包括wmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3禾卩wma等多禾中流媒體擴(kuò)展名。 步驟102中所述判斷進(jìn)一步包括在捕獲的流媒體數(shù)據(jù)包中,如果能夠檢測(cè)至Uwmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3禾卩wma中任一種擴(kuò)展名,則能夠檢測(cè)到流媒體內(nèi)容的擴(kuò)展名;否則,不能夠檢測(cè)到流 媒體內(nèi)容的擴(kuò)展名。步驟103中所述特定的協(xié)議頭標(biāo)識(shí)至少包括"rtsp:/Z"、 "mms:〃"和 "http:/Z"等三種協(xié)議頭標(biāo)識(shí),步驟103中所述從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的 字符串中獲取流媒體鏈接地址包括檢測(cè)到協(xié)議頭標(biāo)識(shí)后,復(fù)制從協(xié)議頭 標(biāo)識(shí)到擴(kuò)展名之間的字符串作為流媒體鏈接地址;然后在該流媒體鏈接地 址中再檢測(cè)是否還包含協(xié)議頭標(biāo)識(shí),如果是,則去掉該內(nèi)部協(xié)議頭標(biāo)識(shí)之 前的字符,將剩余的字符串作為流媒體鏈接地址;并重復(fù)該檢測(cè)步驟,直 至流媒體鏈接地址中不再包含內(nèi)部協(xié)議頭標(biāo)識(shí)。該方法在步驟103之后進(jìn)一步包括步驟104:對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的 流媒體鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟105;步驟105:在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名, 并轉(zhuǎn)到執(zhí)行步驟103。上述步驟105之后仍不能獲取有效流媒體鏈接地址,該方法進(jìn)一步包括步驟106:在流媒體內(nèi)容擴(kuò)展名之前依次檢測(cè)"GET"標(biāo)識(shí)和"Host:" 標(biāo)識(shí),將"GET"標(biāo)識(shí)與擴(kuò)展名之間的字符串存入字符串Sl,將"Host:"標(biāo) 識(shí)之后的字符串存入S2,將按照"http:〃S2/Sl"模式拼接獲得的字符串作為 流媒體鏈接地址。
      該方法進(jìn)一步包括步驟107:對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的 流媒體鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟108;步驟108:在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名, 并轉(zhuǎn)到執(zhí)行步驟106。上述對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證包括檢測(cè)獲取的流 媒體鏈接地址中是否包含非法字符,所述非法字符包括ASCII碼中值小于32或大于126的字符,如果流媒體鏈接地址中包含所述非法字符,則流媒 體鏈接地址為無(wú)效鏈接地址;否則,流媒體鏈接地址為有效鏈接地址?;趫D1所述的獲取流媒體鏈接地址總體技術(shù)方案的實(shí)現(xiàn)流程圖,以 下結(jié)合具體的實(shí)施例對(duì)本發(fā)明獲取流媒體鏈接地址的方法進(jìn)一步詳細(xì)說(shuō) 明。實(shí)施例在本實(shí)施例中,以提取頁(yè)面包含的流媒體資源地址為例,結(jié)合附圖進(jìn) 一步說(shuō)明本發(fā)明獲取流媒體鏈接地址的詳細(xì)方法和步驟。如圖2所示,圖2為依照本發(fā)明實(shí)施例獲取流媒體鏈接地址的方法流 程圖,該方法包括以下步驟步驟201:開(kāi)啟數(shù)據(jù)包捕捉線程;在本步驟中,通過(guò)將網(wǎng)卡的工作模式設(shè)置為混雜模式,可以捕捉通過(guò)網(wǎng)卡的所有數(shù)據(jù)包;本實(shí)施例中,網(wǎng)絡(luò)嗅探程序選用開(kāi)源的winpcap工程 作為數(shù)據(jù)包捕捉線程;然后釆用寫(xiě)方式打開(kāi)數(shù)據(jù)包緩存文件,準(zhǔn)備接受數(shù)據(jù)。步驟202:打開(kāi)包含視頻內(nèi)容的鏈接地址;在本步驟中,在瀏覽器中打開(kāi)指定的鏈接,該鏈接是指包含流媒體內(nèi) 容的鏈接;打開(kāi)動(dòng)作可以手動(dòng)操作,也可由程序?qū)崿F(xiàn);程序?qū)崿F(xiàn)對(duì)大批量 提取流媒體資源鏈接地址是必須的,大批量地址提取中,需要預(yù)先按特定 格式存儲(chǔ)包含流媒體內(nèi)容的鏈接地址,以便地址提取程序訪問(wèn)。 步驟203:數(shù)據(jù)包捕捉線程將捕捉到的數(shù)據(jù)包保存到文件; 在本步驟中,需要捕捉的數(shù)據(jù)包長(zhǎng)度依賴于不同的網(wǎng)站,在對(duì)多個(gè)網(wǎng)站實(shí)驗(yàn)提取資源地址后發(fā)現(xiàn),在1MB長(zhǎng)度之內(nèi),90%以上網(wǎng)站在會(huì)話中傳輸了資源地址,因此通過(guò)限制數(shù)據(jù)包捕捉的最大長(zhǎng)度來(lái)提高地址提取的速度,本實(shí)施實(shí)例中采用1MB作為包捕捉的最大長(zhǎng)度;此外,針對(duì)部分網(wǎng)站設(shè)置的被動(dòng)數(shù)據(jù)傳輸模式(只傳輸流媒體內(nèi)容最前部分,后部分?jǐn)?shù)據(jù) 傳輸需要用戶控制),設(shè)置了數(shù)據(jù)包捕捉的最大延時(shí),通過(guò)限制數(shù)據(jù)包捕 捉的最大時(shí)延來(lái)提高地址體提取的速度,當(dāng)包捕捉達(dá)到一定時(shí)間后,無(wú)論 數(shù)據(jù)包長(zhǎng)度多少,停止捕捉線程,開(kāi)始數(shù)據(jù)包分析,這有效提高了資源地址分析的效率;在實(shí)施實(shí)例中,最大時(shí)延設(shè)置為15ms。 步驟204:關(guān)閉鏈接、關(guān)閉捕捉線程;在本步驟中,同時(shí)關(guān)閉數(shù)據(jù)包緩存文件,準(zhǔn)備進(jìn)行數(shù)據(jù)包分析。 步驟205:檢測(cè)流媒體內(nèi)容的擴(kuò)展名;在本步驟中,檢測(cè)特定的流媒體內(nèi)容擴(kuò)展名,即依次檢測(cè)wmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3、 wma等多禾中流媒體擴(kuò)展名(檢 測(cè)的流媒體類型可根據(jù)需要方便地增刪),直至提取到有效的擴(kuò)展名;如
      果檢測(cè)不到任何流媒體擴(kuò)展名,則說(shuō)明打開(kāi)頁(yè)面中不包含有效的流媒體內(nèi) 容,轉(zhuǎn)到步驟201,重新開(kāi)啟數(shù)據(jù)包捕捉線程,捕獲新的數(shù)據(jù)包。 步驟206:在捕獲到的數(shù)據(jù)包中檢測(cè)特定協(xié)議頭;在本步驟中,檢測(cè)到流媒體擴(kuò)展名后,在其前一定范圍內(nèi)檢測(cè)特定協(xié)議頭,即在擴(kuò)展名之前512字節(jié)向后依次檢測(cè)"rtsp:〃"、 "mms:〃"和"http:〃" 三種協(xié)議頭標(biāo)識(shí)。步驟207: A類地址拼接;在本步驟中,檢測(cè)到協(xié)議頭標(biāo)識(shí)后,復(fù)制從協(xié)議頭到擴(kuò)展名之后的所 有字符串作為資源的鏈接地址;然后在資源地址中再檢測(cè)是否還包含協(xié)議 頭,如果存在去掉內(nèi)部協(xié)議頭之前的所有字符,重復(fù)該步驟直至地址中不 再包含內(nèi)部協(xié)議頭,即為流媒體內(nèi)容的鏈接地址。步驟208:對(duì)資源地址的有效性進(jìn)行驗(yàn)證;在本步驟中,通過(guò)檢測(cè)地址字符串中是否包含非法字符來(lái)驗(yàn)證資源地址有效性;非法字符包括ASCII碼中值小于32或大于126的所有字符, 一旦包含這些非法字符,該地址為無(wú)效鏈接地址,程序檢測(cè)下一個(gè)擴(kuò)展名 的位置,并返回步驟206,獲取新的地址。如果根據(jù)步驟206、 207、 208不能獲得有效資源地址,則按照下面的 步驟進(jìn)行地址提取。步驟209:檢測(cè)"GET"標(biāo)識(shí);在本步驟中,檢測(cè)到流媒體擴(kuò)展名后,在其前一定范圍內(nèi)檢測(cè)"GET" 標(biāo)識(shí),檢測(cè)成功后,將"GET"標(biāo)識(shí)后直至擴(kuò)展名部分的字符串存入字符串 Sl;如果檢測(cè)不到"GET"標(biāo)識(shí),則地址提取失敗,退出程序。
      步驟210:檢測(cè)"H0St:"標(biāo)識(shí);在本步驟中,在其后一定范圍內(nèi),檢測(cè)"H0St:"標(biāo)識(shí);將H0St之后的 字符串存入S2;如果檢測(cè)不到"H0St:"標(biāo)識(shí),則地址提取失敗。 步驟211: B類地址拼接;在本步驟中,按照"http:〃S2/Sl"模式拼接,獲得的字符串作為資源鏈 接地址。步驟212:對(duì)資源地址的有效性進(jìn)行驗(yàn)證;在本步驟中,檢測(cè)步驟211獲取的資源地址中是否包含非法字符,如 果有則為非法地址;否則為有效地址,輸出該地址,執(zhí)行步驟213;具體 檢測(cè)過(guò)程同步驟208,此處不再贅述。在獲取的資源地址為非法地址時(shí),在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒 體內(nèi)容的下一個(gè)擴(kuò)展名,并轉(zhuǎn)到步驟209。步驟213:關(guān)閉捕捉數(shù)據(jù)包文件。以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行 了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而 已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修 改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      權(quán)利要求
      1. 一種獲取流媒體鏈接地址的方法,其特征在于,該方法包括A、捕獲流媒體數(shù)據(jù)包;B、判斷在捕獲的流媒體數(shù)據(jù)包中是否能夠檢測(cè)到流媒體內(nèi)容的擴(kuò)展名,如果能夠檢測(cè)到,則執(zhí)行步驟C;否則,轉(zhuǎn)到步驟A;C、在流媒體內(nèi)容擴(kuò)展名之前檢測(cè)特定的協(xié)議頭標(biāo)識(shí),從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的字符串中獲取流媒體鏈接地址。
      2、 根據(jù)權(quán)利要求1所述的獲取流媒體鏈接地址的方法,其特征在于, 所述步驟A包括Al、開(kāi)啟數(shù)據(jù)包捕捉線程;A2、打開(kāi)包含視頻內(nèi)容的鏈接地址;A3、數(shù)據(jù)包捕捉線程將捕捉到的數(shù)據(jù)包保存到文件;A4、關(guān)閉鏈接、關(guān)閉捕捉線程。
      3、 根據(jù)權(quán)利要求2所述的獲取流媒體鏈接地址的方法,其特征在于, 所述步驟Al通過(guò)將網(wǎng)卡的工作模式設(shè)置為混雜模式實(shí)現(xiàn),采用網(wǎng)絡(luò)嗅探程序捕捉經(jīng)過(guò)網(wǎng)卡的所有數(shù)據(jù)包;步驟A2中所述打開(kāi)包含視頻內(nèi)容的鏈接地址采用程序?qū)崿F(xiàn),或手動(dòng) 操作實(shí)現(xiàn);步驟A3中所述數(shù)據(jù)包捕捉線程在捕捉數(shù)據(jù)包時(shí),通過(guò)限制數(shù)據(jù)包捕 捉的最大長(zhǎng)度來(lái)提高地址提取的速度;步驟A3中所述數(shù)據(jù)包捕捉線程在捕捉數(shù)據(jù)包時(shí),通過(guò)限制數(shù)據(jù)包捕捉的最大時(shí)延來(lái)提高地址體提取的速度。
      4、 根據(jù)權(quán)利要求1所述的獲取流媒體鏈接地址的方法,其特征在于,步驟B中所述檢測(cè)的流媒體內(nèi)容的擴(kuò)展名至少包括wmv、 flv、 rm、 rmvb、 mpg、 swf、 asf、 mov、 mp3禾卩wma多種流媒體擴(kuò)展名。
      5、 根據(jù)權(quán)利要求4所述的獲取流媒體鏈接地址的方法,其特征在于, 步驟B中所述判斷包括在捕獲的流媒體數(shù)據(jù)包中,如果能夠檢測(cè)到wnw、 fW、 rm、 rnwb、 mpg、 swf、 asf、 mov、 mp3和wma中任一種擴(kuò)展名,則能夠檢測(cè)到流媒 體內(nèi)容的擴(kuò)展名。
      6、 根據(jù)權(quán)利要求1所述的獲取流媒體鏈接地址的方法,其特征在于, 步驟C中所述特定的協(xié)議頭標(biāo)識(shí)至少包括"115 ://"、"1111^://"和"11 ://"三種 協(xié)議頭標(biāo)識(shí),步驟C中所述從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的字符串中獲取流 媒體鏈接地址包括檢測(cè)到協(xié)議頭標(biāo)識(shí)后,復(fù)制從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的字符串作為 流媒體鏈接地址;然后在該流媒體鏈接地址中再檢測(cè)是否還包含協(xié)議頭標(biāo) 識(shí),如果是,則去掉該內(nèi)部協(xié)議頭標(biāo)識(shí)之前的字符,將剩余的字符串作為 流媒體鏈接地址;并重復(fù)該檢測(cè)步驟,直至流媒體鏈接地址中不再包含內(nèi) 部協(xié)議頭標(biāo)識(shí)。
      7、 根據(jù)權(quán)利要求1所述的獲取流媒體鏈接地址的方法,其特征在于, 該方法在步驟C之后進(jìn)一步包括D、對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的流媒體 鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟E;E、 在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名,并轉(zhuǎn) 到執(zhí)行步驟C。
      8、 根據(jù)權(quán)利要求7所述的獲取流媒體鏈接地址的方法,其特征在于, 所述步驟E之后仍不能獲取有效流媒體鏈接地址,該方法進(jìn)一步包括F、 在流媒體內(nèi)容擴(kuò)展名之前依次檢測(cè)"GET"標(biāo)識(shí)和"Host:"標(biāo)識(shí),將 "GET"標(biāo)識(shí)與擴(kuò)展名之間的字符串存入字符串Sl,將"Host:"標(biāo)識(shí)之后的 字符串存入S2,將按照"1^ ://82/81"模式拼接獲得的字符串作為流媒體鏈 接地址。
      9、 根據(jù)權(quán)利要求8所述的獲取流媒體鏈接地址的方法,其特征在于,該方法進(jìn)一步包括G、 對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證,如果獲取的流媒體 鏈接地址為有效鏈接地址,則結(jié)束;否則,執(zhí)行步驟H;H、 在捕獲的流媒體數(shù)據(jù)包中檢測(cè)流媒體內(nèi)容的下一個(gè)擴(kuò)展名,并轉(zhuǎn) 到執(zhí)行步驟F。
      10、 根據(jù)權(quán)利要求7或9所述的獲取流媒體鏈接地址的方法,其特征 在于,所述對(duì)獲取的流媒體鏈接地址的有效性進(jìn)行驗(yàn)證包括檢測(cè)獲取的流媒體鏈接地址中是否包含非法字符,所述非法字符包括 ASCII碼中值小于32或大于126的字符,如果流媒體鏈接地址中包含所 述非法字符,則流媒體鏈接地址為無(wú)效鏈接地址;否則,流媒體鏈接地址 為有效鏈接地址。
      全文摘要
      本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)中流媒體資源下載技術(shù)領(lǐng)域,公開(kāi)了一種獲取流媒體鏈接地址的方法,該方法包括A.捕獲流媒體數(shù)據(jù)包;B.判斷在捕獲的流媒體數(shù)據(jù)包中是否能夠檢測(cè)到流媒體內(nèi)容的擴(kuò)展名,如果能夠檢測(cè)到,則執(zhí)行步驟C;否則,轉(zhuǎn)到步驟A;C.在流媒體內(nèi)容擴(kuò)展名之前檢測(cè)特定的協(xié)議頭標(biāo)識(shí),從協(xié)議頭標(biāo)識(shí)到擴(kuò)展名之間的字符串中獲取流媒體鏈接地址。利用本發(fā)明,獲取了流媒體資源的鏈接地址,從而有效解決了因無(wú)法獲得媒體內(nèi)容的鏈接地址而不能下載的問(wèn)題。
      文檔編號(hào)H04L29/08GK101212485SQ20061016974
      公開(kāi)日2008年7月2日 申請(qǐng)日期2006年12月28日 優(yōu)先權(quán)日2006年12月28日
      發(fā)明者張冬明, 張勇東, 李錦濤, 郭俊波 申請(qǐng)人:中國(guó)科學(xué)院計(jì)算技術(shù)研究所
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1