1 <?xml version="1.0" encoding="UTF-8"?>
2 <scraper framework="1.1" date="2013-05-29">
4 <RegExp input="$$1" output="<url>http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url>" dest="3">
5 <expression>release/(.+)</expression>
8 <ResolveIDToUrl dest="3">
9 <RegExp input="$$1" output="<url>http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url>" dest="3">
10 <expression>(.+)</expression>
13 <CreateAlbumSearchUrl dest="3">
14 <RegExp input="$$1" output="<url>http://search.musicbrainz.org/ws/2/release/?fmt=xml&query=release:"\1"%20AND%20artist:"$$4"</url>" dest="3">
15 <RegExp input="$$2" output="\1" dest="4">
16 <expression noclean="1">(.+)</expression>
18 <RegExp input="$$2" output="\1" dest="6">
19 <expression noclean="1">(.+)(?:Ft%2e|Feat%2e|%20Ft\.|%20Feat\.|%20and%20)</expression>
21 <RegExp input="$$6" output="\1" dest="4">
22 <expression>(.+)</expression>
26 </CreateAlbumSearchUrl>
27 <GetAlbumSearchResults dest="8">
28 <RegExp input="$$5" output="<results sorted="yes">\1</results>" dest="8">
29 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5">
30 <expression repeat="yes">id="([^"]*)"><title>([^<]*)</title><status>Official</status>(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\stype="Album"\sid="[^"]*">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
32 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
33 <expression repeat="yes">id="([^"]*)"><title>([^<]*)</title><status>Official</status>(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group(?:\stype="[^"]*")*\sid="[^"]*">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
35 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
36 <expression repeat="yes">id="([^"]*)" ext:score="[^"]*"><title>([^<]*)</title><status>Official</status>(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\sid="[^"]*"\stype="Album">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
38 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
39 <expression repeat="yes">id="([^"]*)" ext:score="[^"]*"><title>([^<]*)</title><status>Official</status>(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*<)*/script></text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\sid="[^"]*"(?:\stype="[^"]*")*>(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
41 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
42 <expression repeat="yes">id="([^"]*)"><title>([^<]*)</title><status>(?!Official)[^<]*</status>(?:<disambiguation>[^<]*</disambiguation>)*(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\stype="Album"\sid="[^"]*">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
44 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
45 <expression repeat="yes">id="([^"]*)"><title>([^<]*)</title><status>(?!Official)[^<]*</status>(?:<disambiguation>[^<]*</disambiguation>)*(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group(?:\stype="[^"]*")*\sid="[^"]*">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
47 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
48 <expression repeat="yes">id="([^"]*)" ext:score="[^"]*"><title>([^<]*)</title><status>(?!Official)[^<]*</status>(?:<disambiguation>[^<]*</disambiguation>)*(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\sid="[^"]*"\stype="Album">(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
50 <RegExp input="$$1" output="<entity><year>\5-\4-T#\6</year><artist>\3</artist><title>\2</title><url cache="mb-\1-album.xml">http://musicbrainz.org/ws/2/release/\1?inc=recordings+release-groups+artists+labels+ratings</url></entity>" dest="5+">
51 <expression repeat="yes">id="([^"]*)" ext:score="[^"]*"><title>([^<]*)</title><status>(?!Official)[^<]*</status>(?:<disambiguation>[^<]*</disambiguation>)*(?:<packaging>[^<]*</packaging>)?<text-representation>(?:<language>[^<]*</language>)*(?:<script>[^<]*</script>)*</text-representation><artist-credit><name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>([^<]*)</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>(?:<name-credit(?:>)*(?:\sjoinphrase="[^"]*">)*(?:<name>[^<]*</name)*(?:>)*<artist\sid="[^"]*"><name>[^<]*</name>(?:<sort-name>[^<]*</sort-name>)*(?:<disambiguation>[^<]*</disambiguation>)*(?:<alias-list>(?:<alias[^<]*</alias>)*</alias-list>)*</artist></name-credit>)*</artist-credit><release-group\sid="[^"]*"(?:\stype="[^"]*")*>(?:<primary-type>[^<]*</primary-type>)*(?:<secondary-type-list>(?:<secondary-type>[^<]*</secondary-type>)+</secondary-type-list>)*</release-group><date>(\d{4})[^<]*</date>(?:<country>)*([^<]*)?.*?<track-list\scount="(\d+)</expression>
53 <expression noclean="1" />
55 </GetAlbumSearchResults>
56 <GetAlbumDetails dest="3">
57 <RegExp input="$$5" output="<details>\1</details>" dest="3">
59 <RegExp input="$$1" output="\1" dest="3">
60 <expression>id="([^"]*)</expression>
62 <!--MBID - release group-->
63 <RegExp input="$$1" output="\1" dest="4">
64 <expression><release-group type="[^"]*" id="([^"]*)"</expression>
67 <RegExp input="$$1" output="\1" dest="7">
68 <expression trim="1"><release id="[^"]*"><title>([^<]*)<</expression>
71 <RegExp input="$$1" output="\1" dest="8">
72 <expression trim="1"><release id="[^"]*"><title>[^<]*<.*?<artist id="[^"]*"><name>([^<]*)<</expression>
74 <RegExp input="$$3" output="<chain function="GetMBAlbumTitleByMBID">\1</chain>" dest="5">
75 <expression noclean="1">(.+)</expression>
77 <RegExp input="$$3" output="<chain function="GetMBAlbumArtistsByMBID">\1</chain>" dest="5+">
78 <expression noclean="1">(.+)</expression>
80 <RegExp input="$$3" output="<chain function="GetMBAlbumArtistByMBID">\1</chain>" dest="5+">
81 <expression noclean="1">(.+)</expression>
83 <RegExp input="$$3" output="<chain function="GetMBAlbumLabelByMBID">\1</chain>" dest="5+">
84 <expression noclean="1">(.+)</expression>
86 <RegExp input="$$3" output="<chain function="GetMBAlbumDateByMBID">\1</chain>" dest="5+">
87 <expression noclean="1">(.+)</expression>
89 <RegExp input="$$3" output="<chain function="GetMBAlbumTracksByMBID">\1</chain>" dest="5+">
90 <expression noclean="1">(.+)</expression>
92 <RegExp input="$INFO[albumreviewsource]" output="<url function="GetAMGAlbumReview" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
93 <expression>allmusic.com</expression>
95 <RegExp input="$INFO[albumreviewsource]" output="<chain function="GetTADBAlbumReviewByMBID">$$4</chain>" dest="5+">
96 <expression>TheAudioDb.com</expression>
98 <RegExp input="$INFO[albumreviewsource]" output="<url function="GetAmazonDEAlbumReview">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
99 <expression>amazon.de</expression>
101 <RegExp input="$INFO[albumratingsource]" output="<chain function="GetMBAlbumRatingByMBID">$$3</chain>" dest="5+">
102 <expression>MusicBrainz</expression>
104 <RegExp input="$INFO[albumratingsource]" output="<url function="GetAMGAlbumRating" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
105 <expression>allmusic.com</expression>
107 <RegExp input="$INFO[albumratingsource]" output="<chain function="GetTADBAlbumRatingByMBID">$$4</chain>" dest="5+">
108 <expression>TheAudioDb.com</expression>
110 <RegExp input="$INFO[albumstylessource]" output="<url function="GetAMGAlbumStyles" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
111 <expression>allmusic.com</expression>
113 <RegExp input="$INFO[albummoodssource]" output="<url function="GetAMGAlbumMoods" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
114 <expression>allmusic.com</expression>
116 <RegExp input="$INFO[albumthemessource]" output="<url function="GetAMGAlbumThemes" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
117 <expression>allmusic.com</expression>
119 <RegExp conditional="fanarttvalbumthumbs" input="$$1" output="<chain function="GetFanartTvAlbumThumbsByMBID">$$4</chain>" dest="5+">
120 <expression noclean="1" />
122 <RegExp conditional="tadbalbumthumbs" input="$$1" output="<chain function="GetTADBAlbumThumbsByMBID">$$4</chain>" dest="5+">
123 <expression noclean="1" />
125 <RegExp conditional="allmusicalbumthumbs" input="$$1" output="<url function="GetAMGAlbumThumbs" cache="mb-$$4-rg.xml">http://musicbrainz.org/ws/2/release-group/$$4?inc=url-rels</url>" dest="5+">
126 <expression noclean="1" />
128 <expression noclean="1" />
132 <GetAMGAlbumReview dest="5">
133 <RegExp input="$$2" output="<details>\1</details>" dest="5">
134 <RegExp input="$$1" output="<chain function="GetAMGAlbumReviewByAMGID">\1</chain>" dest="2">
135 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
137 <expression noclean="1" />
141 <GetAMGAlbumRating dest="5">
142 <RegExp input="$$2" output="<details>\1</details>" dest="5">
143 <RegExp input="$$1" output="<chain function="GetAMGAlbumRatingByAMGID">\1</chain>" dest="2">
144 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
146 <expression noclean="1" />
150 <GetAMGAlbumStyles dest="5">
151 <RegExp input="$$2" output="<details>\1</details>" dest="5">
152 <RegExp input="$$1" output="<chain function="GetAMGAlbumStylesByAMGID">\1</chain>" dest="2">
153 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
155 <expression noclean="1" />
159 <GetAMGAlbumMoods dest="5">
160 <RegExp input="$$2" output="<details>\1</details>" dest="5">
161 <RegExp input="$$1" output="<chain function="GetAMGAlbumMoodsByAMGID">\1</chain>" dest="2">
162 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
164 <expression noclean="1" />
168 <GetAMGAlbumThemes dest="5">
169 <RegExp input="$$2" output="<details>\1</details>" dest="5">
170 <RegExp input="$$1" output="<chain function="GetAMGAlbumThemesByAMGID">\1</chain>" dest="2">
171 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
173 <expression noclean="1" />
177 <GetAMGAlbumThumbs dest="5">
178 <RegExp input="$$2" output="<details>\1</details>" dest="5">
179 <RegExp input="$$1" output="<chain function="GetAMGAlbumThumbsByAMGID">\1</chain>" dest="2">
180 <expression noclean="1">allmusic.com/album/([^<]*)</expression>
182 <expression noclean="1" />
186 <GetAmazonDEAlbumReview dest="5">
187 <RegExp input="$$2" output="<details>\1</details>" dest="5">
188 <RegExp input="$$1" output="<chain function="GetAmazonDEAlbumReviewByASIN">\1</chain>" dest="2">
189 <expression noclean="1">http://www.amazon.de/gp/product/([^<]*)</expression>
191 <expression noclean="1" />
193 </GetAmazonDEAlbumReview>