开发者

Retrieve album art/image from a web service

I have looked at the following question: Could someone provide a C# example using itemsearch from Amazon Web Services

It's out of date and not too useful.

What I want is to retrieve an image from a web service for the album art given artist, song title and/or album name information.

So far I'm digging through the following web service but I'm finding Amazon's offerings very convoluted for that I am looking to do: http://webservices.amazon.com/AWSECommerce开发者_JS百科Service/AWSECommerceService.wsdl

Has anyone won this battle? Any simple ways of going about this?


I recently did this. I ended up using lastFM's API instead. Very simple to use.

This is my full code, provided that you download their C# API and get an API account (which is free for non-commercial use, and instant). XXXXXX and YYYYYY is your lastFM login:

public class LastFmAlbumArt
{
    public static string AbsUrlOfArt(string album, string artist)
    {
        Lastfm.Services.Session session = new Lastfm.Services.Session("XXXXXX", "YYYYYY");
        Lastfm.Services.Artist lArtist = new Lastfm.Services.Artist(artist, session);
        Lastfm.Services.Album lAlbum = new Lastfm.Services.Album(lArtist, album, session);

        return lAlbum.GetImageURL();
    }

    public static Image AlbumArt(string album, string artist)
    {
        Stream stream = null;
        try
        {
            WebRequest req = WebRequest.Create(AbsUrlOfArt(album, artist));
            WebResponse response = req.GetResponse();
            stream = response.GetResponseStream();
            Image img = Image.FromStream(stream);

            return img;
        }
        catch (Exception e)
        {
            return null;
        }
        finally
        {
            if(stream != null)
                stream.Dispose();
        }
    }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜