]> git.sesse.net Git - shamaz/blobdiff - lookup.pl
Split XML parsing out in a separate program.
[shamaz] / lookup.pl
index 465c6835879b3a164fd2f04185e4e570c14f0e24..ff7ba453e47bcccb5fdeadfe12d63e3f949b9885 100644 (file)
--- a/lookup.pl
+++ b/lookup.pl
@@ -5,6 +5,10 @@ use IPC::Open2;
 use XML::DOM;
 use POSIX;
 
+use strict;
+use warnings;
+no warnings qw(once);
+
 my $ua = LWP::UserAgent->new;
 push(@LWP::Protocol::http::EXTRA_SOCK_OPTS, SendTE => 0);
 $ua->agent('Dalvik/1.2.0 (Linux; U; Android Froyo Build/MASTER)');
@@ -79,18 +83,7 @@ sub lookup {
                die $res->status_line;
        }
 
-       my $parser = XML::DOM::Parser->new;
-       my $doc = $parser->parse($res->content);
-       my $tracks = $doc->getElementsByTagName("track");
-       if ($tracks->getLength == 0) {
-               print "Didn't recognize song\n";
-               exit;
-       }
-       my $track = $tracks->item(0);
-       my $title = $track->getElementsByTagName("ttitle")->item(0)->getFirstChild->getData;
-       my $artist = $track->getElementsByTagName("tartist")->item(0)->getFirstChild->getData;
-
-       print "$title,$artist\n";
+       print $res->content;
 }
 
 sub make_part {
@@ -123,7 +116,7 @@ sub encrypt {
        my $ret = "";
        local $/ = undef;
 
-       $pid = open2(\*CHLD_OUT, \*CHLD_IN, './encrypt-ice');
+       my $pid = IPC::Open2::open2(\*CHLD_OUT, \*CHLD_IN, './encrypt-ice');
        for my $i (0..($blocks-1)) {
                my $block = substr($content, 8*$i, 8);
                print CHLD_IN $block;