]> git.sesse.net Git - shamaz/blobdiff - xmlparse.pl
Split XML parsing out in a separate program.
[shamaz] / xmlparse.pl
diff --git a/xmlparse.pl b/xmlparse.pl
new file mode 100755 (executable)
index 0000000..6a8a047
--- /dev/null
@@ -0,0 +1,21 @@
+#! /usr/bin/perl
+
+use strict;
+use warnings;
+use XML::DOM;
+
+local $/ = undef;
+my $content = <>;
+
+my $parser = XML::DOM::Parser->new;
+my $doc = $parser->parse($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";