-->
更改后比原来脚本批量下载歌曲TOP500更简洁一些
脚本第一部分为top500 part1
此部分对不提供歌手名情况的处理比直接使用if语句更舒服一些
#!/usr/bin/perl
#脚本功能:通过传入的歌名和歌手名,从百度搜索引擎的结果中解析出歌曲的下载地址
#use warnings;
use strict;
use LWP::Simple;
my ($song,$singer) = @ARGV;
my $url = defined $singer ? "+$singer" : "";
$url = 'http://mp3.baidu.com/m?f=ms&tn=baidump3&ct=134217728&lf=&rn=&word='.$song.$url.'&lm=0';
my $content = get $url;
my @links;
push @links,$1;
}
foreach my $i (0..$#links){
$links[$i]=get_real_link( $links[$i] );
}
sub get_real_link() {
my $link_url=shift;
get($link_url) =~ /(http\:\/\/.*?mp3)/;
return $1;
}
$"="\n";
print "@links\n";
脚本的运行示例:
[root@supersun my]# ./top500.2.pl 张韶涵
http://222.132.155.82/music/娃娃-张韶涵.mp3
http://222.132.155.82/music/娃娃-张韶涵.mp3
http://www.chyi.edu.sh.cn/Soft/UploadSoft/200604/20060409163807967.mp3
http://www.chyi.edu.sh.cn/Soft/UploadSoft/200604/20060409163807967.mp3
http://www.lvye2006.com/yy/mp/zgx.mp3
http://www.lvye2006.com/yy/mp/zgx.mp3
http://ghost.heshan.com.cn/attachments/200610/24_160947_.mp3
http://ghost.heshan.com.cn/attachments/200610/24_160947_.mp3
http://www.csxlxx.com/xlxxblog/UploadFiles/2006-10/1019191114.mp3
http://www.csxlxx.com/xlxxblog/UploadFiles/2006-10/1019191114.mp3
http://images.enet.com.cn/elady/mp3
http://images.enet.com.cn/elady/mp3
http://222.132.155.82/music/20050121/寓言.mp3
http://222.132.155.82/music/20050121/寓言.mp3
http://data.pepo.cn/data/group/fksjy/20070331/633109416192873750.mp3
http://data.pepo.cn/data/group/fksjy/20070331/633109416192873750.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215171139.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215171139.mp3
http://silver.blog.ndfw.com/UserUpLoad/User0/111/200661632154969.mp3
http://silver.blog.ndfw.com/UserUpLoad/User0/111/200661632154969.mp3
http://www.qwct.com/music/wawa.mp3
http://www.qwct.com/music/wawa.mp3
http://www.csxlxx.com/xlxxblog/uploadfiles/2006-10/1019191114.mp3
http://www.csxlxx.com/xlxxblog/uploadfiles/2006-10/1019191114.mp3
http://www.tjzx.cn/bjzy/c72/tlmfly.mp3
http://www.tjzx.cn/bjzy/c72/tlmfly.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215171534.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215171534.mp3
http://gsz.cdcedu.cn/mp3
http://gsz.cdcedu.cn/mp3
http://platd.coolsee.com/20050707180051540.mp3
http://platd.coolsee.com/20050707180051540.mp3
http://219.235.127.195/zhangshaohai/04.mp3
http://219.235.127.195/zhangshaohai/04.mp3
http://www.pangthai.com.cn/stepbar/music/qsha.mp3
http://www.pangthai.com.cn/stepbar/music/qsha.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215165823.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/2006215165823.mp3
http://www.syku.net/softimg/dcj.mp3
http://www.syku.net/softimg/dcj.mp3
http://cs.ccnu.edu.cn/xyeis/BBSXP/UpFile/UpAttachment/20066211365.mp3
http://cs.ccnu.edu.cn/xyeis/BBSXP/UpFile/UpAttachment/20066211365.mp3
http://www.pangthai.com.cn/stepbar/music/yxdc.mp3
http://www.pangthai.com.cn/stepbar/music/yxdc.mp3
http://www.sailustudio.com/music/Track11.mp3
http://www.sailustudio.com/music/Track11.mp3
http://pengyou.rijiben.org/files/12-Journey.mp3
http://pengyou.rijiben.org/files/12-Journey.mp3
http://sangelcx.68ab.com/songs/1.mp3
http://sangelcx.68ab.com/songs/1.mp3
http://www.gkj.com.cn/mp3
http://www.gkj.com.cn/mp3
http://source.hi.mop.com/photo/storage/fangle/33/69/77/2408407/1160760731123.mp3
http://source.hi.mop.com/photo/storage/fangle/33/69/77/2408407/1160760731123.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/200621517533.mp3
http://www.hgtw.org/bbs/images/upfile/2006-2/200621517533.mp3
http://www.lele2005.com/music/song/香水百合-张韶涵.mp3
http://www.lele2005.com/music/song/香水百合-张韶涵.mp3
http://tv.netandtv.com/center/04haowan/audio/lost.mp3
http://tv.netandtv.com/center/04haowan/audio/lost.mp3
[root@supersun my]# ls
devnull.pl localtime.pl mutping.pl top500.1.pl top500.2.pl
注意特殊变量$",前面的perl特殊变量:输入输出已经提到过 双引号中列表值分隔符
脚本的下一部分主要功能为:检测所得链接文件类的正确性及大小

这玩意真不错。
^_^
coldrain真厉害啊~~
太懒了,一直没写好一个像样的脚本,惭愧!