用flash实现基于搜索引擎的搜索 - 本地直接从百度获取LRC歌词
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-08
最终页面的超链接。也就是这一段 " <a class=l href="http://www.rixiu.com/fei5/11/1140657ae45bc98.html" target=_blank onmousedown="return clk(0,''res'',''2'','''')">郑源/披着羊皮的狼.LRC 飞舞歌词fei5.com</a><br>" 事实上,我们只要取得这个超链接就可以了: www.rixiu.com/fei5/11/1140657ae45bc98.html 最终我们将用String的slice方法取得这个字符串,但在取之前我们必须找到字符串开始的位置"http://" 和最后结束的位置 "bc98.html" ,这就要用到String.indexOf()或String.lastIndexOf()方法。在这里,我们使用逆向查找的方法。也就是String.lastIndexOf()。它是从后向前搜索,如果找到,它将返回靠后的那个字符串的位置。参数将指定要搜索的字符串,它还有一个搜索起始位置的参数(在比较高级查找的时候有用),在这里我们只用第一个字符串参数,详细请看看官方帮助文档中的说明: my_str.lastIndexOf(substring, [startIndex]) 参数: substring 一个整数或字符串,指定要搜索的字符串。 startIndex 一个可选整数,指定搜索 substring 的起始点。 返回: 指定子字符串的最后一个匹配项的位置,或 -1。 说明: 方法;在字符串中从右向左搜索,并返回调用此方法的字符串中在 startIndex 之前找到的 substring 的最后一个匹配项的索引。如果没有找到 substring,则此方法返回 -1。 for (var i = 0; i<linkData.length; i++) { ...... } 对每个区块执行同样的操作。现在我们只看看其中一块的处理。 看看用 "网页快照" ("快照" )截断的方式: ********************************* </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">类似网页</a></nobr> <p class=g> <a class=l href="http://www.rixiu.com/fei5/11/1140657ae45bc98.html" 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 - 补充材料 - </font> <nobr><a class=fl href="http://72.14.203.104/search?q=cache:jsIjyqajvhcJ:www.rixiu.com/fei5/11/1140657ae45bc98.html+%5Bti:%E6%8A%AB%E7%9D%80%E7%BE%8A%E7%9A%AE%E7%9A%84%E7%8B%BC&hl=zh-CN" target=_blank>网页快照 </font> ********************************* 下面的处理事实上就是一层层剥离数据的过程。 第一句 linkData[i] = linkData[i].slice(0, linkData[i].lastIndexOf("<a")) 的作用是只取上面源代码的一部份用作后面的处理,这样有利于后面的操作和简化你的视野。 选取有特征的字符串在这里很重要。 看看上面的这段代码,关于搜索结果的那一段("<font size=-1>郑源/披着羊皮的狼.LRC......c98.html</span> - 6k")都是不能作为特征进行数据搜索处理的,因为它们会随着搜索结果的不同而改变。所有可用的就是关于超链接的部份(搜索引擎不管如何更改他们的页面,点向最终页面的这个链接始终都是会存在的,随着时间的推移,在很长一段时间内也都是如此,这里有为你考虑到程序的寿命问题,也就 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: flash条形统计功能下一篇: Flash广告播放器开发
关于用flash实现基于搜索引擎的搜索 - 本地直接从百度获取LRC歌词的所有评论