中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁(yè) > 技術(shù)文檔 > 多媒體制作 > 用flash從百度搜索中找歌詞
Accordion組件的使用實(shí)例 回到列表 FLASH打造LRC歌詞播放器
 用flash從百度搜索中找歌詞

作者:FlashK 時(shí)間: 2006-01-12 文檔類型:原創(chuàng) 來(lái)自:藍(lán)色理想

第 1 頁(yè) 本地直接從百度獲取LRC歌詞 一
第 2 頁(yè) 本地直接從百度獲取LRC歌詞 二
第 3 頁(yè) 本地直接從百度獲取LRC歌詞 三
第 4 頁(yè) 本地直接從百度獲取LRC歌詞 四
第 5 頁(yè) 實(shí)用性的東西

看看用 "網(wǎng)頁(yè)快照" ("快照" )截?cái)嗟姆绞剑?BR>*********************************
</a> -
<a class=fl href="/search?hl=zh-CN&lr=lang_zh-CN&newwindow=1&q=related:www.design-war.com/manage/download_counter.asp%3Fid%3D2262">類似網(wǎng)頁(yè)</a></nobr>
<p class=g>
<a class=l target=_blank onmousedown="return clk(0,'res','2','')">鄭源/披著羊皮的狼.LRC 飛舞歌詞fei5.com</a><br>
<font size=-1>鄭源/披著羊皮的狼.LRC. <b>...</b> [ti:披著羊皮的狼] [ar:鄭源] [al:我最<br>火] [by:fei5.com] [offset:-500] [00:01.00]-披著羊皮的狼- [00:04.00]歌手:鄭<br>源[00:08.00]專輯:我最火[00:12.00]詞曲:刀郎[00:16.00] <b>...</b><br>
<font color=#008000>
<span dir=ltr>www.rixiu.com/fei5/11/1140657ae45bc98.html</span> - 6k - 補(bǔ)充材料 - </font>
<nobr><a class=fl target=_blank>網(wǎng)頁(yè)快照
</font>

*********************************
下面的處理事實(shí)上就是一層層剝離數(shù)據(jù)的過(guò)程。

第一句 linkData[i] = linkData[i].slice(0, linkData[i].lastIndexOf("<a")) 的作用是只取上面源代碼的一部份用作后面的處理,這樣有利于后面的操作和簡(jiǎn)化你的視野。

選取有特征的字符串在這里很重要。
看看上面的這段代碼,關(guān)于搜索結(jié)果的那一段("<font size=-1>鄭源/披著羊皮的狼.LRC......c98.html</span> - 6k")都是不能作為特征進(jìn)行數(shù)據(jù)搜索處理的,因?yàn)樗鼈儠?huì)隨著搜索結(jié)果的不同而改變。所有可用的就是關(guān)于超鏈接的部份(搜索引擎不管如何更改他們的頁(yè)面,點(diǎn)向最終頁(yè)面的這個(gè)鏈接始終都是會(huì)存在的,隨著時(shí)間的推移,在很長(zhǎng)一段時(shí)間內(nèi)也都是如此,這里有為你考慮到程序的壽命問(wèn)題,也就是說(shuō),你寫的這段程序在很長(zhǎng)的一段時(shí)間內(nèi)都是有用的)。


也就是源代碼中的"<a href= " 和"</a>"標(biāo)簽。在這里我們用了"<a"作為特征字符串并只取在這之前的數(shù)據(jù)。我們將從后面剝離最后一個(gè)超鏈接以使結(jié)果從后面開始第一個(gè)超鏈接就是我們想要的數(shù)據(jù)。
linkData[i].lastIndexOf("<a") 找到最后一個(gè) "<a"出現(xiàn)的位置,也就是在這個(gè)地方: ......補(bǔ)充材料 - </font><nobr><a class=fl href="http://72.14.203.104/ .....
linkData[i] = linkData[i].slice(0, linkData[i].lastIndexOf("<a")) 取它之前的數(shù)據(jù)。也就是這一段: </a> - <a class=fl href="/search?hl=......6k - 補(bǔ)充材料 - </font><nobr>
(補(bǔ)充一句,考到錨點(diǎn)和結(jié)果文字多少的情況,事實(shí)上用"</a"作為特征字符串處理可能更好一些,這樣這一次處理的結(jié)果就剩下這段代碼了):
*********************************
</a> -
<a class=fl href="/search?hl=zh-CN&lr=lang_zh-CN&newwindow=1&q=related:www.design-war.com/manage/download_counter.asp%3Fid%3D2262">類似網(wǎng)頁(yè)</a></nobr>
<p class=g>
<a class=l target=_blank onmousedown="return clk(0,'res','2','')">鄭源/披著羊皮的狼.LRC 飛舞歌詞fei5.com</a>

*********************************

對(duì)比一下上面用"類似網(wǎng)頁(yè)"截?cái)嗟臄?shù)據(jù),要處理到這一步,就需要重復(fù)處理兩次。(因?yàn)?"<a" 的超鏈接在從后向前查找的過(guò)程中,有出現(xiàn)兩次,這就是為什么要選擇 "網(wǎng)頁(yè)快照" 作為我們截?cái)嘀貜?fù)區(qū)塊的原因)

第二句 linkData[i] = linkData[i].slice(linkData[i].lastIndexOf("href=")+6) 從后面查找 "href="(現(xiàn)在最后的一個(gè)超鏈接區(qū)域就是我們想要的鏈接了,這就是為什么我們用lastIndexOf從后面搜索)。不過(guò)稍微不同的是,現(xiàn)在取在"href="之后的字符串(上一步是之前)。經(jīng)過(guò)這次處理剩下的代碼如下:
*********************************
www.rixiu.com/fei5/11/1140657ae45bc98.html"; target=_blank onmousedown="return clk(0,'res','2','')">鄭源/披著羊皮的狼.LRC 飛舞歌詞fei5.com</a>
*********************************

第三句 linkData[i] = linkData[i].slice(0, linkData[i].indexOf("\"")) 取得第一個(gè)引號(hào)以前的字符串。這里我講一下為什么不用 target= 或者.html 作為特征處理的原因,上面的代碼實(shí)際上也可以將 target= 放在后面,也不會(huì)影響最終頁(yè)面的結(jié)果。像這樣:
www.rixiu.com/fei5/11/1140657ae45bc98.html"; onmousedown="return clk(0,'res','2','')" target=_blank>鄭源/披著羊皮的狼.LRC
飛舞歌詞fei5.com</a>
所以,它是不可識(shí)別和預(yù)知的。而.html 則并不是因?yàn)樗芯W(wǎng)頁(yè)都是以.html作為結(jié)尾的,有些可能是.htm ,有些更可能是像?sl=11&word=aa這樣動(dòng)態(tài)生成的格式。(其實(shí)" 也并不是非常穩(wěn)健的方式,因?yàn)橛行┎粯?biāo)準(zhǔn)的網(wǎng)頁(yè)可能將引號(hào)" 去除,這時(shí)候替代的方法是使用空格)
*********************************
www.rixiu.com/fei5/11/1140657ae45bc98.html
*********************************

現(xiàn)在最終我們得到了這個(gè)超鏈接。

通過(guò)上面的for (var i = 0; i<linkData.length; i++) { 循環(huán),我們得到了這個(gè)頁(yè)面的所有通過(guò)最終頁(yè)面的鏈接(在百度中是10個(gè))并將它們放入一個(gè)數(shù)組中。

現(xiàn)在我們已經(jīng)得到了搜索結(jié)果頁(yè)面的每個(gè)通向最終頁(yè)面的鏈接(Google 和百度都如此,教程中對(duì)兩者的特征字作了兼容),在百度中,一般而言,只要打開第一個(gè)鏈接就可以了。準(zhǔn)確性差不多高過(guò)95%。

openLRCPage(linkData[0])

linkIndex = 1 這句就不說(shuō)了,用來(lái)處理一些邏輯。使它可以在第一個(gè)鏈接失效的時(shí)候也能繼續(xù)運(yùn)行。

function openLRCPage(url) {
    myLoadVars.load(url);
    myLoadVars.onData = getLRC;
}

這個(gè)和一開始加載搜索結(jié)果的代碼很相似,只不過(guò)將處理的函數(shù)傳給了 getLRC。

function getLRC(src) {
    htmlData = src.slice(src.lastIndexOf("[ti:"+musicName));
    findEndTag();
......
現(xiàn)在開始處理最終的含有LRC內(nèi)容的網(wǎng)頁(yè)了(從搜索引擎中打開)。最終的結(jié)果頁(yè)可能如下:

(前面省略)
[ti:突然的自我]
[ar:黃小琥]
[al:]
[by:wolfpey]
[offset:500]
[00:02.67]《突然的自我》
[00:10.12]作詞:伍佰 徐克
[00:11.67]作曲/編曲:伍佰
[00:12.30]演唱:黃小琥
(后面省略)

具體請(qǐng)從搜索引擎打開幾個(gè)用"[ti:突然的自我"搜索的頁(yè)面看看,F(xiàn)在我們直接取在我們想要的LRC內(nèi)容開始后的網(wǎng)頁(yè)代碼。也就是以 "[ti:"+musicName) 為特征開始的網(wǎng)頁(yè)代碼。(為了便于觀察,我這里以實(shí)際顯示的內(nèi)容為參考,并沒有列出網(wǎng)頁(yè)的源代碼,但它們有時(shí)是可以相互通用的,在網(wǎng)頁(yè)源代碼都會(huì)包含最終顯示的內(nèi)容,某些特殊的轉(zhuǎn)義字符除外。只是更為雜亂。插一句,有些網(wǎng)頁(yè)的源代碼確實(shí)夠亂的,很可能讓你的程序崩潰)

我們可以用indexOf()和lastIndexOf()查找?紤]到有些網(wǎng)頁(yè)中(特別是論壇)會(huì)出現(xiàn)兩次以上的歌詞。也許是后一個(gè)發(fā)貼者貼了一個(gè)更準(zhǔn)確的歌詞或者其它情況(比如有人將它作為主題標(biāo)頭內(nèi)容發(fā)表)。我們這里使用lastIndexOf(),我們從后面開始查找(我們假定后一個(gè)歌詞比前一個(gè)歌詞更準(zhǔn)確)。并選取在它("[ti:突然的自我")之后的所有內(nèi)容用作后面的處理。

出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色月光

上一頁(yè) 本地直接從百度獲取LRC歌詞 二 下一頁(yè) 本地直接從百度獲取LRC歌詞 四

◎進(jìn)入論壇Flash專欄版塊參加討論

相關(guān)文章 更多相關(guān)鏈接
Google 視頻下載工具
flash留言本梯度教程(附源)
Accordion組件的使用實(shí)例
歌詞同步關(guān)鍵技術(shù)
Flashforward 2006最終入圍名單
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設(shè)計(jì)比賽 網(wǎng)頁(yè)制作 web標(biāo)準(zhǔn) 用戶體驗(yàn) UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點(diǎn)最新 站點(diǎn)最新列表
周大福“敬•自然”設(shè)計(jì)大賽開啟
國(guó)際體驗(yàn)設(shè)計(jì)大會(huì)7月將在京舉行
中國(guó)國(guó)防科技信息中心標(biāo)志征集
云計(jì)算如何讓安全問(wèn)題可控
云計(jì)算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機(jī)會(huì)
阿里行云
云手機(jī)年終巨獻(xiàn),送禮標(biāo)配299起
阿里巴巴CTO王堅(jiān)的"云和互聯(lián)網(wǎng)觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機(jī)主題設(shè)計(jì)大賽
欄目最新 欄目最新列表
淺談JavaScript編程語(yǔ)言的編碼規(guī)范
如何在illustrator中繪制臺(tái)歷
Ps簡(jiǎn)單繪制一個(gè)可愛的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡(jiǎn)單的作品展示頁(yè)面
CSS定位機(jī)制之一:普通流
25個(gè)最佳最閃亮的Eclipse開發(fā)項(xiàng)目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁(yè) 首頁(yè) 前頁(yè) 后頁(yè) 尾頁(yè) 頁(yè)次:3/5頁(yè) 1個(gè)記錄/頁(yè) 轉(zhuǎn)到 頁(yè) 共5個(gè)記錄

藍(lán)色理想版權(quán)申明:除部分特別聲明不要轉(zhuǎn)載,或者授權(quán)我站獨(dú)家播發(fā)的文章外,大家可以自由轉(zhuǎn)載我站點(diǎn)的原創(chuàng)文章,但原作者和來(lái)自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來(lái)自一節(jié),自行鏈接)。文章版權(quán)歸我站和作者共有。

轉(zhuǎn)載要求:轉(zhuǎn)載之圖片、文件,鏈接請(qǐng)不要盜鏈到本站,且不準(zhǔn)打上各自站點(diǎn)的水印,亦不能抹去我站點(diǎn)水印。

特別注意:本站所提供的攝影照片,插畫,設(shè)計(jì)作品,如需使用,請(qǐng)與原作者聯(lián)系,版權(quán)歸原作者所有,文章若有侵犯作者版權(quán),請(qǐng)與我們聯(lián)系,我們將立即刪除修改。

您的評(píng)論
用戶名:  口令:
說(shuō)明:輸入正確的用戶名和密碼才能參與評(píng)論。如果您不是本站會(huì)員,你可以注冊(cè) 為本站會(huì)員。
注意:文章中的鏈接、內(nèi)容等需要修改的錯(cuò)誤,請(qǐng)用報(bào)告錯(cuò)誤,以利文檔及時(shí)修改。
不評(píng)分 1 2 3 4 5
注意:請(qǐng)不要在評(píng)論中含與內(nèi)容無(wú)關(guān)的廣告鏈接,違者封ID
請(qǐng)您注意:
·不良評(píng)論請(qǐng)用報(bào)告管理員,以利管理員及時(shí)刪除。
·尊重網(wǎng)上道德,遵守中華人民共和國(guó)的各項(xiàng)有關(guān)法律法規(guī)
·承擔(dān)一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
·本站評(píng)論管理人員有權(quán)保留或刪除其管轄評(píng)論中的任意內(nèi)容
·您在本站發(fā)表的作品,本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用
·參與本評(píng)論即表明您已經(jīng)閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評(píng)論文檔 | 報(bào)告錯(cuò)誤  
專業(yè)書推薦 更多內(nèi)容
網(wǎng)站可用性測(cè)試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網(wǎng)站UI 設(shè)計(jì)之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設(shè)計(jì)》
犀利開發(fā)—jQuery內(nèi)核詳解與實(shí)踐
作品集 更多內(nèi)容

雜⑦雜⑧ Gold NORMANA V2