LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: 小锁

xlyrics-0.4(歌词秀)

[复制链接]
发表于 2005-8-13 19:56:52 | 显示全部楼层
大家用的是哪个歌词地址出来 说一下啊
回复 支持 反对

使用道具 举报

发表于 2005-10-19 22:09:34 | 显示全部楼层
ubuntu缺少很多东西
./configure都完成不了。。。。:(
回复 支持 反对

使用道具 举报

发表于 2005-10-19 22:31:25 | 显示全部楼层
看起来挺不错!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-10-20 00:35:53 | 显示全部楼层
Post by homesp
#!/usr/bin/perl -I/usr/lib/xlyrics
# parse arguments
@ARGV < 1 && print("Usage: downloadlyrics.pl music [download_dir] [more_lyrics?]
    \n") && exit(-1);
    $music = $ARGV[0];
    if(@ARGV > 1){
            $lyrics_file = $ARGV[1];
    }else{
            $lyrics_file = "$ARGV[0].lrc";
    }

    use HTTP:ite;
    $http = new HTTP:ite;

    # search lyrics in basic database
    %vars = (
            "souqu" => "&#184;è&#195;&#251;",
            "souci" => $music,
            "ku" => "db",
            "B1" => "&#204;á&#189;&#187;"
    );
    $http->prepare_post(\%vars);
    $http->request("http://bbs.hjqing.com/lrc/index.asp")
            or die "Unable to get document: $!";
    if($http->body() =~ /&#195;&#187;&#211;&#208;&#196;&#227;&#207;&#235;&#213;&#210;&#181;&#196;&#184;è&#180;&#202;/){
    # try the addtion database
            glob $http = new HTTP:ite;
            %vars = (
                    "souqu" => "&#184;è&#195;&#251;",
                    "souci" => $music,
                    "ku" => "dbadd",
                    "B1" => "&#204;á&#189;&#187;"
            );
            $http->prepare_post(\%vars);
            $http->request("http://bbs.hjqing.com/lrc/index.asp")
                    or die "Unable to get documents $!";
            $http->body() =~ /&#195;&#187;&#211;&#208;&#196;&#227;&#207;&#235;&#213;&#210;&#181;&#196;&#184;è&#180;&#202;/ && die("find nothing");
    }
    @lines = split(/\n/, $http->body());
    open(INFOFILE, ">/tmp/$music.lrc.info")
            or die "Can not open info file to wirte";
    open(OUTFILE, ">$lyrics_file")
            or die "Can not open lyrics file to write";
    $count = 0;
    for($index = 0; $index < @lines; $index ++){
            if($lines[$index] =~ /^\[.*$/){
                    # write the lyrics content to the file
                    $lines[$index] =~ s/<\/textarea>//;
                    print OUTFILE ("$lines[$index]\n");
            }elsif($lines[$index] =~ /&#189;&#248;&#210;&#187;&#178;&#189;&#203;&#209;&#203;÷/){
                    $index ++;
                    for(; $index < @lines; $index ++){
                            # add more infomation
                            if($lines[$index] =~ /<\/textarea>/){
                                    last;
                            }else{
                                    print INFOFILE ("$lines[$index]\n");
                                    $count ++;
                            }
                    }

                    # just get lyrics list or first download and more than one file found
                    if(@ARGV == 3
                            && ($ARGV[2] == "list" || ($ARGV[2] == "first" && $count > 1))){
                            close(OUTFILE);
                            unlink($lyrics_file);
                            exit;
                    }

            }
    }


    downloadlyrics.pl里面怎么乱码?

因为里面的编码是gb2312,你的环境是utf8?
回复 支持 反对

使用道具 举报

发表于 2005-12-12 18:36:02 | 显示全部楼层
不能用在utf8环境下感觉很郁闷
要不然我就用这么好的东东了
希望楼主能考虑改进一下
回复 支持 反对

使用道具 举报

发表于 2006-2-2 08:59:28 | 显示全部楼层
好用,只不过歌词网站好象上不了,只好手动下载歌词放在目录里
回复 支持 反对

使用道具 举报

发表于 2006-2-12 11:42:35 | 显示全部楼层
总得来说还是很好用的,支持。下面是一些缺点:
不支持并utf-8不爽。
不能编辑不爽。
用文件名不如用mp3自己的标签吧。况且同名的歌会有不同的歌手。
不能下载歌词,下面这个错可能与此有关
Unable to get document:  at /usr/lib/xlyrics/downloadlyrics.pl line 115.
回复 支持 反对

使用道具 举报

发表于 2006-11-15 12:25:10 | 显示全部楼层

在Ubuntu下怎么弄啊

Post by 阿蟾
FC4下的:

yum install bmp-devel才能装。

装后gedit /usr/share/applications/fedora-bmp.desktop

Exec=beep-media-player改为Exec=env LANG=zh_CN beep-media-player

这样,gb2312的歌名以及歌词都能正确显示了。^-^

在Ubuntu下面不行啊
回复 支持 反对

使用道具 举报

发表于 2006-11-26 17:28:24 | 显示全部楼层

出错了,这是为何?

configure 没错,make时出错 我装了bmp xmms 的开发包了  烦请指点
cd . \
  && CONFIG_FILES= CONFIG_HEADERS=config.h \
     /bin/sh ./config.status
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing default-1 commands
config.status: executing default-2 commands
make  all-recursive
make[1]: Entering directory `/home/wyg/a/xlyrics-0.4.6'
Making all in intl
make[2]: Entering directory `/home/wyg/a/xlyrics-0.4.6/intl'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/wyg/a/xlyrics-0.4.6/intl'
Making all in po
make[2]: Entering directory `/home/wyg/a/xlyrics-0.4.6/po'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/wyg/a/xlyrics-0.4.6/po'
Making all in src
make[2]: Entering directory `/home/wyg/a/xlyrics-0.4.6/src'
Making all in plugins
make[3]: Entering directory `/home/wyg/a/xlyrics-0.4.6/src/plugins'
/bin/sh ../../libtool --mode=link gcc     -o liblyrics_xmms.la -rpath /usr/local/lib/xlyrics -module -avoid-version -nostdlib liblyrics_xmms_la-lyrics_xmms.lo -L/opt/gnome/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lgthread -lglib -lpthread -ldl -lXi -lXext -lX11 -lm -lxmms
grep: /opt/gnome/lib/libgtk.la: No such file or directory
/usr/bin/sed: can't read /opt/gnome/lib/libgtk.la: No such file or directory
libtool: link: `/opt/gnome/lib/libgtk.la' is not a valid libtool archive
make[3]: *** [liblyrics_xmms.la] 错误 1
make[3]: Leaving directory `/home/wyg/a/xlyrics-0.4.6/src/plugins'
make[2]: *** [all-recursive] 错误 1
make[2]: Leaving directory `/home/wyg/a/xlyrics-0.4.6/src'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/home/wyg/a/xlyrics-0.4.6'
make: *** [all] 错误 2
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-11-26 18:26:48 | 显示全部楼层
Post by wygdm

/usr/bin/sed: can't read /opt/gnome/lib/libgtk.la: No such file or directory
libtool: link: `/opt/gnome/lib/libgtk.la' is not a valid libtool archive

没有找到libgtk.la
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表