diff options
Diffstat (limited to 'system/scrapers/music')
-rw-r--r-- | system/scrapers/music/allmusic.gif | bin | 0 -> 2623 bytes | |||
-rw-r--r-- | system/scrapers/music/allmusic.xml | 84 | ||||
-rw-r--r-- | system/scrapers/music/allmusic_merlin_lastfm.xml | 149 | ||||
-rw-r--r-- | system/scrapers/music/common/allmusic.xml | 141 | ||||
-rw-r--r-- | system/scrapers/music/common/htbackdrops.xml | 18 | ||||
-rw-r--r-- | system/scrapers/music/common/lastfm.xml | 10 | ||||
-rw-r--r-- | system/scrapers/music/discogs.gif | bin | 0 -> 1423 bytes | |||
-rw-r--r-- | system/scrapers/music/discogs.xml | 127 | ||||
-rw-r--r-- | system/scrapers/music/freebase.png | bin | 0 -> 9930 bytes | |||
-rw-r--r-- | system/scrapers/music/freebase.xml | 149 | ||||
-rw-r--r-- | system/scrapers/music/israel-music.png | bin | 0 -> 2178 bytes | |||
-rw-r--r-- | system/scrapers/music/israel-music.xml | 53 | ||||
-rw-r--r-- | system/scrapers/music/lastfm.xml | 121 |
13 files changed, 852 insertions, 0 deletions
diff --git a/system/scrapers/music/allmusic.gif b/system/scrapers/music/allmusic.gif Binary files differnew file mode 100644 index 0000000000..30c40ef318 --- /dev/null +++ b/system/scrapers/music/allmusic.gif diff --git a/system/scrapers/music/allmusic.xml b/system/scrapers/music/allmusic.xml new file mode 100644 index 0000000000..9a3a9019f6 --- /dev/null +++ b/system/scrapers/music/allmusic.xml @@ -0,0 +1,84 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.1" date="2009-09-20" name="Allmusic" content="albums" thumb="allmusic.gif" language="en"> + <include>common/htbackdrops.xml</include> + <include>common/allmusic.xml</include> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="htbfanart" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <RegExp input="$$1" output="<setting label="Grab thumbs from HTBackdrops" type="bool" id="htbthumbs" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetSettings> + <NfoUrl dest="3"> + <RegExp input="$$1" output="\1" dest="3"> + <expression>(http://www.allmusic.com/cg/.*)</expression> + </RegExp> + </NfoUrl> + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output="<url post="yes">http://www.allmusic.com/cg/amg.dll?P=amg&amp;SQL=\1&amp;OPT1=2</url>" dest="3"> + <expression></expression> + </RegExp> + </CreateAlbumSearchUrl> + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\1</title></entity>" dest="5"> + <expression repeat="yes" noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<entity><year>\1</year><artist>\2</artist><title>\4</title><url cache="am-\2-\4-album.html">http://www.allmusic.com/cg/amg.dll?p=amg&amp;SQL=\3</url></entity>" dest="5+"> + <expression repeat="yes" noclean="1,2,3">>([0-9]+)</.*?>([a-zA-Z0-9].*?)<.*?sql=([0-9:a-z]*)">(.*?)<.</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumSearchResults> + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<url cache="am-$$2-album.html" function="ParseAMGAlbum">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5+"> + <expression noclean="1">sql=([^"]*)">Overview</expression> + </RegExp> + <RegExp input="$$1" output="<url cache="am-$$2-album.html" function="GetAMGReview">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5+"> + <expression noclean="1">sql=([^"]*)">Review</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> + <CreateArtistSearchUrl dest="3"> + <RegExp input="$$1" output="<url post="yes">http://www.allmusic.com/cg/amg.dll?P=amg&amp;SQL=\1&amp;OPT1=1</url>" dest="3"> + <expression></expression> + </RegExp> + </CreateArtistSearchUrl> + <GetArtistSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\1</title></entity>" dest="5"> + <expression repeat="yes" noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<entity><title>\2</title><genre>\3</genre><year>\5</year><url cache="am-\2-artist.html">http://www.allmusic.com/cg/amg.dll?p=amg&amp;SQL=\1</url></entity>" dest="5+"> + <expression repeat="yes" noclean="1,2">style="[^=]*<a href="[^"]*sql=([^"]*)">([^<]*)</a>[^-]*[^>]*>([^<]*)</TD>[^>]*>(&nbsp;)?([^<]*)</td></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetArtistSearchResults> + <GetArtistDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<url cache="am-$$2-artist.html" function="ParseAMGArtist">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5"> + <expression noclean="1">sql=([^"]*)">Biography</expression> + </RegExp> + <RegExp input="$$2" conditional="htbthumbs" output="<url function="GetHTBThumbs" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=5&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$2" conditional="htbfanart" output="<url function="GetHTBFanart" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=1&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<url cache="am-$$2-artist.html" function="GetAMGBiography">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5+"> + <expression noclean="1">sql=([^"]*)">Biography</expression> + </RegExp> + <RegExp input="$$1" output="<url cache="am-$$2-discog.html" function="GetAMGDiscography">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5+"> + <expression noclean="1">sql=([^"]*)">Discography</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetArtistDetails> +</scraper> diff --git a/system/scrapers/music/allmusic_merlin_lastfm.xml b/system/scrapers/music/allmusic_merlin_lastfm.xml new file mode 100644 index 0000000000..a7b30d7b85 --- /dev/null +++ b/system/scrapers/music/allmusic_merlin_lastfm.xml @@ -0,0 +1,149 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.1" date="2009-09-16" name="allmusic & merlin.pl & lastfm.pl" content="albums" thumb="allmusic.gif"> + <include>common/htbackdrops.xml</include> + <include>common/allmusic.xml</include> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="htbfanart" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <RegExp input="$$1" output="<setting label="Grab thumbs from HTBackdrops" type="bool" id="htbthumbs" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetSettings> + <NfoUrl dest="3"> + <RegExp input="$$1" output="\1" dest="3"> + <expression>(http://www.allmusic.com/cg/.*)</expression> + </RegExp> + </NfoUrl> + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output="<url post="yes">http://www.allmusic.com/cg/amg.dll?P=amg&amp;SQL=\1&amp;OPT1=2</url>" dest="3"> + <expression></expression> + </RegExp> + </CreateAlbumSearchUrl> + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\1</title></entity>" dest="5"> + <expression repeat="yes" noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<entity><year>\1</year><artist>\2</artist><title>\4</title><url cache="allmusic-album.html">http://www.allmusic.com/cg/amg.dll?p=amg&amp;SQL=\3</url></entity>" dest="5+"> + <expression repeat="yes" noclean="1,2,3">>([0-9]+)</.*?>([a-zA-Z0-9].*?)<.*?sql=([0-9:a-z]*)">(.*?)<.</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumSearchResults> + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<url cache="allmusic-album.html" function="ParseAMGAlbum">placeholder</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$9" output="\1" dest="6"> + <RegExp input="$$8" output="+\1" dest="9"> + <expression repeat="yes">([^ ]+)</expression> + </RegExp> + <expression>\+(.*)</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1"><span>Artist</span>[^;]*[^>]*>[^>]*>([^<]*)</expression> + </RegExp> + <RegExp input="$$9" output="\1" dest="7"> + <RegExp input="$$8" output="+\1" dest="9"> + <expression repeat="yes">([^ ]+)</expression> + </RegExp> + <expression>\+(.*)</expression> + </RegExp> + <RegExp input="$$1" output="<url function="MerlinLink">http://merlin.pl/xbmc/browse/search/4,,1.html?phrase=&amp;place=4+simple&amp;carrier=3&amp;offer=O&amp;category=&amp;title=$$6&amp;person=$$7&amp;firm=&amp;date=&amp;isbn=&amp;sort=rank&amp;x=40&amp;y=12</url>" dest="5+"> + <expression noclean="1"></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> + <MerlinLink dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<url function="GetReview">http://merlin.pl\1</url>" dest="2"> + <expression>Liczba towar[^f]+f="([^"]+)</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </MerlinLink> + <GetReview dest="5"> + <RegExp input="$$2" output="<?xml version="1.0" encoding="iso-8859-2" standalone="yes"?><details><review>\1</review></details>" dest="5"> + <RegExp input="$$1" output="\1" dest="2"> + <expression>class="productDesc">(.*?)</div></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="2+"> + <expression>piorka_merlina.*?contents">([^<]*)<</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="2+"> + <expression>contents">([^<]*)<</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetReview> + <CreateArtistSearchUrl dest="3"> + <RegExp input="$$1" output="<url post="yes">http://www.allmusic.com/cg/amg.dll?P=amg&amp;SQL=\1&amp;OPT1=1</url>" dest="3"> + <expression></expression> + </RegExp> + </CreateArtistSearchUrl> + <GetArtistSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\1</title></entity>" dest="5"> + <expression repeat="yes" noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<entity><title>\2</title><genre>\3</genre><year>\5</year><url cache="allmusic-artist.html" >http://www.allmusic.com/cg/amg.dll?p=amg&amp;SQL=\1</url></entity>" dest="5+"> + <expression repeat="yes" noclean="1,2">style="[^=]*<a href="[^"]*sql=([^"]*)">([^<]*)</a>[^-]*[^>]*>([^<]*)</TD>[^>]*>(&nbsp;)?([^<]*)</td></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetArtistSearchResults> + <GetArtistDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<url cache="allmusic-artist.html" function="ParseAMGArtist">placeholder</url>" dest="5"> + <expression /> + </RegExp> + <RegExp input="$$2" conditional="htbthumbs" output="<url function="GetHTBThumbs" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=5&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$2" conditional="htbfanart" output="<url function="GetHTBFanart" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=1&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$9" output="\1" dest="6"> + <RegExp input="$$8" output="+\1" dest="9"> + <expression repeat="yes">([^ ]+)</expression> + </RegExp> + <expression>\+(.*)</expression> + </RegExp> + <RegExp input="$$1" output="<url function="LastfmLink">http://ws.audioscrobbler.com/2.0/?method=artist.search&amp;artist=$$6&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url>" dest="5+"> + <expression noclean="1"></expression> + </RegExp> + <RegExp input="$$1" output="<url function="GetAMGDiscography">http://www.allmusic.com/cg/amg.dll?p=amg&amp;sql=\1</url>" dest="5+"> + <expression noclean="1">sql=([^"]*)">Discography</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetArtistDetails> + <LastfmLink dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<url function="GetBiography">http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&amp;mbid=\2&amp;lang=pl&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url>" dest="2"> + <expression noclean="1"><artist>.*?<name>([^<]*)</name>.*?<mbid>([^<]*)</mbid></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </LastfmLink> + <GetBiography dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<biography>\1</biography>" dest="2"> + <expression clear="yes"><content><!\[CDATA\[(.*?)\]</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetBiography> +</scraper> diff --git a/system/scrapers/music/common/allmusic.xml b/system/scrapers/music/common/allmusic.xml new file mode 100644 index 0000000000..89994e4253 --- /dev/null +++ b/system/scrapers/music/common/allmusic.xml @@ -0,0 +1,141 @@ +<scraperfunctions> + <GetAMGDiscography dest="5"> + <RegExp input="$$2$$3" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<album><year>\1</year><title>\3</title><label>\4</label></album>" dest="2"> + <expression repeat="yes" clear="yes" noclean="1,3,4">sorted-cell">([0-9]+)</td><td[^>]*>(<a href=[^>]*><img [^>]*/></a>|[^<]*)?</td><td[^>]*><a href=[^>]*>([^<]*)</a></td><td[^<]*</td><td[^>]*>([^<]+)</td></expression> + </RegExp> + <RegExp input="$$2" output="\1&amp;\2" dest="3"> + <expression noclean="1,2" repeat="yes">(.*?)&(.+)</expression> + </RegExp> + <RegExp input="$$3" output="" dest="2"> + <expression>(.+)</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAMGDiscography> + <GetAMGBiography dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<biography>\1</biography>" dest="2"> + <expression clear="yes">Biography</td>.*?<p>(.*?)</p></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAMGBiography> + <GetAMGReview dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<review>\1</review>" dest="2"> + <expression>Review</td>.*?<p>(.*?)</p></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAMGReview> + <ParseAMGArtist dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<name>\1</name>" dest="5"> + <expression noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<born>\1</born>" dest="5+"> + <expression><span>Born.*?;">(.*?)</td></expression> + </RegExp> + <RegExp input="$$1" output="<died>\1</died>" dest="5+"> + <expression><span>Died.*?;">(.*?)</td></expression> + </RegExp> + <RegExp input="$$1" output="<formed>\1</formed>" dest="5+"> + <expression><span>Formed.*?;">(.*?)</td></expression> + </RegExp> + <RegExp input="$$1" output="<disbanded>\1</disbanded>" dest="5+"> + <expression><span>Disbanded.*?;">(.*?)</td></expression> + </RegExp> + <RegExp input="$$1" output="<yearsactive>\1</yearsactive>" dest="5+"> + <expression><span>Years Active.*?sub">(.*?)</div></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression noclean="1">Genre Listing-->([^!]*)<!--Genre Listing</expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="7"> + <expression noclean="1">Style Listing-->([^!]*)<!--Style Listing</expression> + </RegExp> + <RegExp input="$$7" output="<style>\1</style>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1">Moods Listing-->([^!]*)<!--Moods Listing</expression> + </RegExp> + <RegExp input="$$8" output="<mood>\1</mood>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="9"> + <expression noclean="1">Instruments Listing-->([^!]*)<!--Instruments Listing</expression> + </RegExp> + <RegExp input="$$9" output="<instruments>\1</instruments>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="<thumb>\1</thumb>" dest="5+"> + <expression noclean="1"><img src="([^"]*)" id="Picture"</expression> + </RegExp> + <RegExp input="$$1" output="<thumb>http://image.allmusic.com/00/amg/pic200/dr\1\200/\1\2\3\4/\1\2\3\4\5.jpg</thumb>" dest="5+"> + <expression noclean="1" repeat="yes">"([A-Z^])([0-9^])([0-9^])([0-9^])([^"]*)"</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </ParseAMGArtist> + <ParseAMGAlbum dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<title>\1</title>" dest="5"> + <expression noclean="1"><TITLE>allmusic[ (]+ ([^>]*) > Overview</expression> + </RegExp> + <RegExp input="$$1" output="<artist>\1</artist>" dest="5+"> + <expression noclean="1"><span>Artist</span>[^;]*[^>]*>[^>]*>([^<]*)</expression> + </RegExp> + <RegExp input="$$1" output="<rating>\1</rating>" dest="5+"> + <expression noclean="1"><span>Rating</span>[^_]*_r([0-9^]*)</expression> + </RegExp> + <RegExp input="$$1" output="<label>\1</label>" dest="5+"> + <expression noclean="1"><span>Label</span>[^;]*[^>]*>([^<]*)</expression> + </RegExp> + <RegExp input="$$1" output="<type>\1</type>" dest="5+"> + <expression noclean="1"><span>Type</span>[^;]*[^>]*>([^<]*)</expression> + </RegExp> + <RegExp input="$$1" output="<releasedate>\1</releasedate>" dest="5+"> + <expression noclean="1"><span>Release Date</span>[^;]*[^>]*>([^<]*)</expression> + </RegExp> + <RegExp input="$$1" output="<year>\1</year>" dest="5+"> + <expression noclean="1"><span>Release Date.*?([0-9]+)</</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression noclean="1">Genre[s]* Listing-->([^!]*)<!--Genre[s]* Listing</expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="7"> + <expression noclean="1">Style[s]* Listing-->([^!]*)<!--Style[s]* Listing</expression> + </RegExp> + <RegExp input="$$7" output="<style>\1</style>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1">Mood[s]* Listing-->([^!]*)<!--Mood[s]* Listing</expression> + </RegExp> + <RegExp input="$$8" output="<mood>\1</mood>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="9"> + <expression noclean="1">Theme[s]* Listing-->([^!]*)<!--Theme[s]* Listing</expression> + </RegExp> + <RegExp input="$$9" output="<theme>\1</theme>" dest="5+"> + <expression noclean="1" repeat="yes"><li>[^>]*>([^<]*)</a></li></expression> + </RegExp> + <RegExp input="$$1" output="<track><position>\1</position><title>\3</title><duration>\4</duration></track>" dest="5+"> + <expression noclean="1,2,3" repeat="yes">"cell">([0-9]+)</.*?sql=([0-9:a-z]*)">(.*?)</a>.*?"right".*?>(.*?)</</expression> + </RegExp> + <RegExp input="$$1" output="<thumb>http://image.allmusic.com/\1</thumb>" dest="5+"> + <expression noclean="1">http://image.allmusic.com/([^"]*)"</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </ParseAMGAlbum> +</scraperfunctions> diff --git a/system/scrapers/music/common/htbackdrops.xml b/system/scrapers/music/common/htbackdrops.xml new file mode 100644 index 0000000000..9872e4717f --- /dev/null +++ b/system/scrapers/music/common/htbackdrops.xml @@ -0,0 +1,18 @@ +<scraperfunctions> + <GetHTBThumbs dest="5"> + <RegExp input="$$13" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<thumb preview="http://www.htbackdrops.com/data/thumbnails/\2">http://www.htbackdrops.com/data/media/\2</thumb>" dest="13"> + <expression noclean="1" repeat="yes">mode=search(&amp;sessionid=[^"]*)?"><img src="./data/thumbnails/([^"]+)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetHTBThumbs> + <GetHTBFanart dest="5"> + <RegExp input="$$13" output="<details><fanart url="http://www.htbackdrops.com/">\1</fanart></details>" dest="5"> + <RegExp input="$$1" output="<thumb preview="data/thumbnails/\2">data/media/\2</thumb>" dest="13"> + <expression noclean="1" repeat="yes">mode=search(&amp;sessionid=[^"]*)?"><img src="./data/thumbnails/([^"]+)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetHTBFanart> +</scraperfunctions> diff --git a/system/scrapers/music/common/lastfm.xml b/system/scrapers/music/common/lastfm.xml new file mode 100644 index 0000000000..307c9a9c45 --- /dev/null +++ b/system/scrapers/music/common/lastfm.xml @@ -0,0 +1,10 @@ +<scraperfunctions> + <GetLastFMDiscography dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<album><title>\1</title></album>" dest="2+"> + <expression repeat="yes"><album[^>]*>[^<]*<name>([^<]*?)</name></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetLastFMDiscography> +</scraperfunctions> diff --git a/system/scrapers/music/discogs.gif b/system/scrapers/music/discogs.gif Binary files differnew file mode 100644 index 0000000000..2aba929794 --- /dev/null +++ b/system/scrapers/music/discogs.gif diff --git a/system/scrapers/music/discogs.xml b/system/scrapers/music/discogs.xml new file mode 100644 index 0000000000..d727e9fa93 --- /dev/null +++ b/system/scrapers/music/discogs.xml @@ -0,0 +1,127 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.1" date="2009-09-16" name="Discogs" content="albums" thumb="discogs.gif" language="en"> + <include>common/htbackdrops.xml</include> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="htbfanart" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <RegExp input="$$1" output="<setting label="Grab thumbs from HTBackdrops" type="bool" id="htbthumbs" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetSettings> + <NfoUrl dest="3"> + <RegExp input="$$1" output="\1" dest="3"> + <expression>(http://www.discogs.com/.*)</expression> + </RegExp> + </NfoUrl> + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output="http://www.discogs.com/advanced_search?artist=$$2&release_title=\1&btn=Search+Releases" dest="3"> + <expression/> + </RegExp> + </CreateAlbumSearchUrl> + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><artist>\2</artist><title>\3</title><url>http://www.discogs.com\1</url></entity>" dest="5+"> + <expression repeat="yes"><a href="([^"]*/release/[^"]*)".*?>(.*?) - (.*?)</a></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetAlbumSearchResults> + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<artist>\1</artist>" dest="5"> + <expression noclean="1"><a href="/artist/[^"]+">(.*?)</a></expression> + </RegExp> + <RegExp input="$$1" output="<title>\1</title>" dest="5+"> + <expression noclean="1">Add .*? - (.*?) to your collection</expression> + </RegExp> + <RegExp input="$$1" output="<rating>\1</rating>" dest="5+"> + <expression noclean="1">Rating:</td>.*?<b>([0-9]+).[0-9]</b>/[0-9]+</expression> + </RegExp> + <RegExp input="$$1" output="<label>\1</label>" dest="5+"> + <expression noclean="1">Label:</td>.*?>([^<]+)</a></expression> + </RegExp> + <RegExp input="$$1" output="<releasedate>\1</releasedate>" dest="5+"> + <expression noclean="1">Released:.*?<td>(.*?)</td></expression> + </RegExp> + <RegExp input="$$1" output="<year>\1</year>" dest="5+"> + <expression noclean="1">Released:.*?<td>.*?([0-9]+)</td></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression trim="1">Genre:</td><td>(.*?)</td></expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression repeat="yes">([^,]+),?</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression trim="1">Style:</td><td>(.*?)</td></expression> + </RegExp> + <RegExp input="$$6" output="<style>\1</style>" dest="5+"> + <expression repeat="yes">([^,]+),?</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression noclean="1">Tracklisting:(.*?)</table></expression> + </RegExp> + <RegExp input="$$6" output="<track><position>\1</position><title>\2</title><duration>\3</duration></track>" dest="5+"> + <expression repeat="yes">"left">[^<0-9]*([0-9]+)</td>[^:]*<td>([^<]+) \(([:0-9]+)\)</td></expression> + </RegExp> + <RegExp input="$$1" output="<review>\1</review>" dest="5+"> + <expression>User Reviews:</b>[^<]*<blockquote>[^<]*(<div id=.+?)<div id=</expression> + </RegExp> + <RegExp input="$$1" output="<url function="GetImages">http://www.discogs.com\1</url>" dest="5+"> + <expression><a href="(/viewimages\?release=[^"]*)"</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> + <GetImages dest="5"> + <RegExp input="$$4" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<thumb>\1</thumb>" dest="4+"> + <expression noclean="1" repeat="yes">img src="(http://www.discogs.com/image/[^"]*)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetImages> + <CreateArtistSearchUrl dest="3"> + <RegExp input="$$2" output="http://www.discogs.com/search?type=artists&q="\1"&btn=Search" dest="3"> + <RegExp input="$$2" output="\1,%20The" dest="2"> + <RegExp input="$$1" output="\1" dest="2"> + <expression noclean="1"/> + </RegExp> + <expression noclean="1" clear="no" repeat="no" trim="1">[Tt]he%20(.+)</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </CreateArtistSearchUrl> + <GetArtistSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\2</title><url>http://www.discogs.com/artist/\1</url></entity>" dest="5+"> + <expression repeat="yes"><a href="/artist/([^"]*)" class="rollover_link">(.+?)</a></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistSearchResults> + <GetArtistDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<name>\1</name>" dest="5"> + <expression noclean="1">Manage your (.*?) collection</expression> + </RegExp> + <RegExp input="$$1" output="<biography>\1</biography>" dest="5+"> + <expression>Profile:(.*?)URLs:</expression> + </RegExp> + <RegExp input="$$2" conditional="htbthumbs" output="<url function="GetHTBThumbs" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=5&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<url function="GetImages">http://www.discogs.com\1</url>" dest="5+"> + <expression>a href="(/viewimages\?artist=[^"]*)"</expression> + </RegExp> + <RegExp input="$$2" conditional="htbfanart" output="<url function="GetHTBFanart" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=1&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistDetails> +</scraper> diff --git a/system/scrapers/music/freebase.png b/system/scrapers/music/freebase.png Binary files differnew file mode 100644 index 0000000000..7b14e32b7b --- /dev/null +++ b/system/scrapers/music/freebase.png diff --git a/system/scrapers/music/freebase.xml b/system/scrapers/music/freebase.xml new file mode 100644 index 0000000000..4399e47a5a --- /dev/null +++ b/system/scrapers/music/freebase.xml @@ -0,0 +1,149 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.1" date="2009-09-16" name="Freebase" content="albums" thumb="freebase.png"> + <include>common/htbackdrops.xml</include> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="htbfanart" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <RegExp input="$$1" output="<setting label="Grab thumbs from HTBackdrops" type="bool" id="htbthumbs" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetSettings> + <NfoUrl dest="3"> + <RegExp input="$$1" output="<url>http://api.freebase.com/api/service/mqlread?query={%22query%22:{%22type%22:%22/music/artist%22,%22name%22:null,%22genre%22:[],%22album%22:[{%22id%22:%22/\2%22,%22/common/topic/article%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22/common/topic/image%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22label%22:[],%22engineer%22:[],%22producer%22:[],%22release_type%22:null,%22artist%22:null,%22name%22:null,%22release_date%22:null,%22track%22:[{%22name%22:null,%22length%22:null,%22index%22:null,%22sort%22:%22index%22,%22optional%22:true}],%22sort%22:%22release_date%22}]}}</url>" dest="3+"> + <expression>(http://www.freebase.com/view/)(.*)</expression> + </RegExp> + </NfoUrl> + + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output="http://api.freebase.com/api/service/mqlread?query={%22query%22:{%22type%22:%22/music/artist%22,%22name~=%22:%22$$2%22,%22album%22:[{%22guid%22:null,%22artist%22:null,%22name%22:null,%22name~=%22:%22\1%22}]}}" dest="3"> + <expression/> + </RegExp> + </CreateAlbumSearchUrl> + + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><artist>\1</artist><title>\3</title><url>http://api.freebase.com/api/service/mqlread?query={%22query%22:{%22type%22:%22/music/artist%22,%22name%22:null,%22genre%22:[],%22album%22:[{%22id%22:%22/guid/\2%22,%22/common/topic/article%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22/common/topic/image%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22label%22:[],%22engineer%22:[],%22producer%22:[],%22release_type%22:null,%22artist%22:null,%22name%22:null,%22release_date%22:null,%22track%22:[{%22name%22:null,%22length%22:null,%22index%22:null,%22sort%22:%22index%22,%22optional%22:true}],%22sort%22:%22release_date%22}]}}</url></entity>" dest="5+"> + <expression repeat="yes">"artist": "([^"]*)".*?"guid": "#([^"]*)".*?"name": "([^"]*)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetAlbumSearchResults> + + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<artist>\1</artist>" dest="5"> + <expression noclean="1">"artist": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="<title>\1</title>" dest="5+"> + <expression noclean="1">"name": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression trim="1">"label": (.*?)\]</expression> + </RegExp> + <RegExp input="$$6" output="<label>\1</label>" dest="5+"> + <expression noclean="1" repeat="yes">"([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="<type>\1</type>" dest="5+"> + <expression noclean="1">"release_type": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="<releasedate>\1</releasedate>" dest="5+"> + <expression noclean="1">"release_date": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="<year>\1</year>" dest="5+"> + <expression noclean="1">"release_date": "([0-9]+)</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6+"> + <expression trim="1">"genre": (.*?)\]</expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression noclean="1" repeat="yes">"([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="<track><position>\1</position><title>\3</title><duration>\2</duration></track>" dest="5+"> + <expression repeat="yes">"index": ([0-9]+).*?"length": ([0-9]+).*?"name": "([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="<thumb>http://www.freebase.com/api/trans/raw/guid/\1</thumb>" dest="5+"> + <expression noclean="1">image":.*?"guid": "#([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="<url function="GetAlbumReview">http://www.freebase.com/api/trans/raw/guid/\1</url>" dest="5+"> + <expression noclean="1">article":.*?"guid": "#([^"]*)"</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> + + <GetAlbumReview dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<review>\1</review>" dest="2"> + <expression noclean="1"><p>([^<]*)</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumReview> + + <CreateArtistSearchUrl dest="3"> + <RegExp input="$$1" output="http://www.freebase.com/api/service/search?query=\1&type=/music/artist&indent=1" dest="3"> + <expression/> + </RegExp> + </CreateArtistSearchUrl> + + <GetArtistSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\2</title><url>http://api.freebase.com/api/service/mqlread?query={%22query%22:{%22type%22:%22/music/artist%22,%22id%22:%22/guid/\1%22,%22/common/topic/article%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22/common/topic/image%22:[{%22guid%22:null,%22optional%22:true,%22limit%22:1}],%22name%22:null,%22genre%22:[],%22album%22:[],%22active_start%22:null,%22active_end%22:null,%22instruments_played%22:[]}}</url></entity>" dest="5+"> + <expression repeat="yes">"guid": "#([^"]*)".*?"name": "([^"]*)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistSearchResults> + + <GetArtistDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<name>\1</name>" dest="5"> + <expression noclean="1">"name": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="<formed>\1</formed>" dest="5+"> + <expression noclean="1">"active_start": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="<disbanded>\1</disbanded>" dest="5+"> + <expression noclean="1">"active_end": "([^"]*)</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression trim="1">"genre": (.*?)\]</expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression repeat="yes">"([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression trim="1">"album": (.*?)\]</expression> + </RegExp> + <RegExp input="$$6" output="<album><title>\1</title></album>" dest="5+"> + <expression noclean="1" repeat="yes">"([^"]*)"</expression> + </RegExp> + <RegExp input="$$1" output="<thumb>http://www.freebase.com/api/trans/raw/guid/\1</thumb>" dest="5+"> + <expression noclean="1">image":.*?"guid": "#([^"]*)"</expression> + </RegExp> + <RegExp input="$$2" conditional="htbthumbs" output="<url function="GetHTBThumbs" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=5&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$2" conditional="htbfanart" output="<url function="GetHTBFanart" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=1&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<url function="GetBiography">http://www.freebase.com/api/trans/raw/guid/\1</url>" dest="5+"> + <expression noclean="1">article":.*?"guid": "#([^"]*)"</expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistDetails> + + <GetBiography dest="5"> + <RegExp input="$$2" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<biography>\1</biography>" dest="2"> + <expression noclean="1"><p>([^<]*)</expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetBiography> +</scraper> diff --git a/system/scrapers/music/israel-music.png b/system/scrapers/music/israel-music.png Binary files differnew file mode 100644 index 0000000000..932c3abf75 --- /dev/null +++ b/system/scrapers/music/israel-music.png diff --git a/system/scrapers/music/israel-music.xml b/system/scrapers/music/israel-music.xml new file mode 100644 index 0000000000..62010304ee --- /dev/null +++ b/system/scrapers/music/israel-music.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.0" date="2009-05-22" name="IsraelMusic" content="albums" thumb="israel-music.png"> + <NfoUrl dest="3"> + <RegExp input="$$1" output="\1/" dest="3"> + <expression>(http://he.israel-music.com.*)</expression> + </RegExp> + </NfoUrl> + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output='http://he.israel-music.com/search/\1/' dest="3"> + <expression></expression> + </RegExp> + <RegExp input="$$2%20$$1" output='http://he.israel-music.com/search/\1/' dest="3"> + <expression></expression> + </RegExp> + </CreateAlbumSearchUrl> + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output='<?xml version="1.0" encoding="utf-8" standalone="yes"?><results>\1</results>' dest="8"> + <RegExp input="$$1" output='<entity><url>http://he.israel-music.com\1</url><title>\2</title></entity>' dest="5+"> + <expression repeat="yes" noclean='1,2'><![CDATA[<strong><a dir="rtl" href="(.[^"]*)">(.[^<]*)</a>]]></expression> + </RegExp> + <RegExp input="$$1" output='<entity><url>http://he.israel-music.com\1</url><title>\2</title><artist>\4</artist><year>\5</year></entity>' dest="5+"> + <expression repeat="yes" noclean='1,3,4,5'><![CDATA[<strong><a dir="rtl" href="(.[^"]*)">(.*?)</a> - <a dir="rtl" href="(.[^"]*)">(.[^<]*)</a> <span>([0-9]*)</span></strong>]]></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumSearchResults> + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<title>\1</title>" dest="5"> + <expression noclean="1"><![CDATA[<h1>(.[^<]*)</h1>]]></expression> + </RegExp> + <RegExp input="$$1" output="<artist>\1</artist>" dest="5+"> + <expression noclean="1"><![CDATA[</span><a.[^>]*>(.[^<]*)</a>]]></expression> + </RegExp> + <RegExp input="$$1" output="<review>\1</review>" dest="5+"> + <expression><![CDATA[<ul id="details".[^>]*>(.*)</ul>.[^<]*<p style="clear:both">]]></expression> + </RegExp> + <RegExp input="$$1" output="<thumb>\1</thumb>" dest="5+"> + <expression noclean="1"><![CDATA[id="imagef" src="(.[^"]*)"]]></expression> + </RegExp> + <RegExp input="$$1" output="<year>\1</year>" dest="5+"> + <expression noclean="1"><![CDATA[<li><b>שנה: </b> ([0-9]+)</li>]]></expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="6"> + <expression noclean="1"><![CDATA[<li><b>ז'אנר:</b>(.*)</li>]]></expression> + </RegExp> + <RegExp input="$$6" output="<genre>\1</genre>" dest="5+"> + <expression noclean="1" repeat="yes"><![CDATA[<a.[^>]*">(.[^<]*)</a>]]></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> +</scraper> diff --git a/system/scrapers/music/lastfm.xml b/system/scrapers/music/lastfm.xml new file mode 100644 index 0000000000..494b3a5b58 --- /dev/null +++ b/system/scrapers/music/lastfm.xml @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="UTF-8"?> +<scraper framework="1.1" date="2009-09-16" name="Last.FM" content="albums" thumb="lastfm.gif"> + <include>common/htbackdrops.xml</include> + <include>common/lastfm.xml</include> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="htbfanart" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <RegExp input="$$1" output="<setting label="Grab thumbs from HTBackdrops" type="bool" id="htbthumbs" default="true"></setting>" dest="5+"> + <expression></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetSettings> + <NfoUrl dest="3"> + <RegExp input="$$1" output="http://ws.audioscrobbler.com/2.0/?method=album.getinfo&album=\2&artist=\1&api_key=71e468a84c1f40d4991ddccc46e40f1b" dest="3"> + <expression>(http://www.last.fm/music/([^/]*)/(.*))</expression> + </RegExp> + <RegExp input="$$1" output="http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=\1&api_key=71e468a84c1f40d4991ddccc46e40f1b" dest="3"> + <expression>(http://www.last.fm/music/([^/]*))$</expression> + </RegExp> + </NfoUrl> + <CreateAlbumSearchUrl dest="3"> + <RegExp input="$$1" output="http://ws.audioscrobbler.com/2.0/?method=album.search&album=\1&artist=$$2&api_key=71e468a84c1f40d4991ddccc46e40f1b" dest="3"> + <expression/> + </RegExp> + </CreateAlbumSearchUrl> + <GetAlbumSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><artist>\2</artist><title>\1</title><url>http://ws.audioscrobbler.com/2.0/?method=album.getinfo&amp;album=\4&amp;artist=\3&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url></entity>" dest="5+"> + <expression repeat="yes"><album>.*?<name>([^<]*)</name>.*?<artist>([^<]*)</artist>.*?<url>http://www.last.fm/music/([^/]+)/(.*?)</url></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetAlbumSearchResults> + <GetAlbumDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<artist>\1</artist>" dest="5"> + <expression noclean="1"><artist>(.*?)</artist></expression> + </RegExp> + <RegExp input="$$1" output="<title>\1</title>" dest="5+"> + <expression noclean="1"><name>(.*?)</name></expression> + </RegExp> + <RegExp input="$$1" output="<releasedate>\1</releasedate>" dest="5+"> + <expression trim="1"><releasedate>:(.*?)</releasedate></expression> + </RegExp> + <RegExp input="$$1" output="<year>\1</year>" dest="5+"> + <expression trim="1"><releasedate>[^,]*([0-9]+),</releasedate></expression> + </RegExp> + <RegExp input="$$1" output="<review>\1</review>" dest="5+"> + <expression><content><!\[CDATA\[(.*)\]\]></content></expression> + </RegExp> + <RegExp input="$$1" output="<thumb>\2</thumb>" dest="5+"> + <expression noclean="1"><image size="(extra)?large">([^<]*)</image></expression> + </RegExp> + <RegExp input="$$1" output="<url function="GetTracks">http://ws.audioscrobbler.com/2.0/?method=playlist.fetch&amp;playlistURL=lastfm://playlist/album/\1&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url>" dest="5+"> + <expression noclean="1"><id>(.*?)</id></expression> + </RegExp> + <expression noclean="1"></expression> + </RegExp> + </GetAlbumDetails> + <GetTracks dest="5"> + <RegExp input="$$4" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<track><title>\1</title></track>" dest="4+"> + <expression noclean="1" repeat="yes"><track>.*?<title>(.*?)</title></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetTracks> + <CreateArtistSearchUrl dest="3"> + <RegExp input="$$1" output="http://ws.audioscrobbler.com/2.0/?method=artist.search&artist=\1&api_key=71e468a84c1f40d4991ddccc46e40f1b" dest="3"> + <expression/> + </RegExp> + </CreateArtistSearchUrl> + <GetArtistSearchResults dest="8"> + <RegExp input="$$5" output="<results>\1</results>" dest="8"> + <RegExp input="$$1" output="<entity><title>\1</title><url>http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&amp;mbid=\2&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url></entity>" dest="5+"> + <expression repeat="yes"><artist>.*?<name>([^<]*)</name>.*?<mbid>([^<]*)</mbid></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistSearchResults> + <GetArtistDetails dest="3"> + <RegExp input="$$5" output="<details>\1</details>" dest="3"> + <RegExp input="$$1" output="<name>\1</name>" dest="5"> + <expression noclean="1"><name>([^<]*)</name></expression> + </RegExp> + <RegExp input="$$1" output="<biography>\1</biography>" dest="5+"> + <expression><content><!\[CDATA\[(.*?)\]</expression> + </RegExp> + <RegExp input="$$1" output="<thumb>\2</thumb>" dest="5+"> + <expression noclean="1"><image size="(extra)?large">([^<]*)</image></expression> + </RegExp> + <RegExp input="$$2" conditional="htbthumbs" output="<url function="GetHTBThumbs" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=5&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$2" conditional="htbfanart" output="<url function="GetHTBFanart" post="yes">http://www.htbackdrops.com/search.php?search_terms=all&amp;cat_id=1&amp;search_keywords=\1</url>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<url function="GetGenres">http://ws.audioscrobbler.com/2.0/?method=artist.gettoptags&amp;artist=\1&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url>" dest="5+"> + <expression noclean="1"><url>http://www.last.fm/music/(.*?)</url></expression> + </RegExp> + <RegExp input="$$1" output="<url function="GetLastFMDiscography">http://ws.audioscrobbler.com/2.0/?method=artist.gettopalbums&amp;artist=\1&amp;api_key=71e468a84c1f40d4991ddccc46e40f1b</url>" dest="5+"> + <expression noclean="1"><url>http://www.last.fm/music/(.*?)</url></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetArtistDetails> + <GetGenres dest="5"> + <RegExp input="$$4" output="<details>\1</details>" dest="5"> + <RegExp input="$$1" output="<genre>\1</genre>" dest="4"> + <expression noclean="1"><tag>.*?<name>([^/lt;]*)</name></expression> + </RegExp> + <RegExp input="$$1" output="<style>\1</style>" dest="4+"> + <expression repeat="yes" noclean="1"><tag>.*?<name>([^/lt;]*)</name></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetGenres> +</scraper> |