Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bigpresh/lyrics-fetcher

Lyrics::Fetcher Perl module on CPAN
https://github.com/bigpresh/lyrics-fetcher

Last synced: about 1 month ago
JSON representation

Lyrics::Fetcher Perl module on CPAN

Awesome Lists containing this project

README

        

Lyrics::Fetcher - Perl extension to manage fetchers of song lyrics.

SYNOPSIS

use Lyrics::Fetcher;

# using a specific fetcher:
print Lyrics::Fetcher->fetch('Pink Floyd','Echoes','LyricWiki');

# if you omit the fetcher, automatically tries all available fetchers:
print Lyrics::Fetcher->fetch('Oasis', 'Cast No Shadow');

# or you can pass an arrayref of fetchers you want used:
print Lyrics::Fetcher->fetch('Oasis', 'Whatever', [qw(LyricWiki Google)]);

DESCRIPTION

This module is a fetcher manager. It searches for modules in the
Lyrics::Fetcher::* name space and registers them as available fetchers.

The fetcher modules are called by Lyrics::Fetcher and they return song's lyrics
in plain text form.

This module calls the respective Fetcher->fetch($$) method and returns the
result.

In case of module error the Fetchers must return undef with the error
description in $@.

In case of problems with lyrics' fetching, the error fill be returned in the
$Lyrics::Fetcher::Error string. If all goes well, it will have 'OK' in it.

The fetcher selection is made by the "method" parameter passed to the fetch()
of this module. You can also omit this parameter, in which case all available
fetchers will be tried, or you can supply an arrayref of fetchers you'd like
to try (in order of preference).

The value of the "method" parameter must be a * part of the Lyrics::Fetcher::*
fetcher package name.
ADDING FETCHERS ^

If there's a lyrics site you'd like to see supported, raise a request as a
wishlist item on http://rt.cpan.org/NoAuth/Bugs.html?Dist=Lyrics-Fetcher or
mail me direct: [email protected] and, if I have time, I'll whip up a
fetcher. Or, feel free to code it up yourself and send it to me (or upload it
to CPAN yourself) if you want to be really helpful ;)

BUGS

There are no known bugs, if you catch one please let me know.

CONTACT AND COPYRIGHT

Copyright 2007-08 David Precious (CPAN Id: BIGPRESH)

All comments / suggestions / bug reports gratefully received (ideally use the
RT installation at http://rt.cpan.org/ but mail me direct if you prefer)

Previously:
Copyright 2003 Sir Reflog .
Copyright 2003 Zachary P. Landau

LICENCE
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.

$Id$