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/artist/\1?inc=url-rels</url>" dest="3">
5 <expression>http://musicbrainz.org/artist/(.+)</expression>
8 <ResolveIDToUrl dest="3">
9 <RegExp input="$$1" output="<url>http://musicbrainz.org/ws/2/artist/\1?inc=url-rels</url>" dest="3">
10 <expression>(.+)</expression>
14 <CreateArtistSearchUrl dest="3">
15 <RegExp input="$$1" output="<url>http://search.musicbrainz.org/ws/2/artist/?fmt=xml&query=artist:"$$4"&limit=100</url>" dest="3">
16 <RegExp input="$$1" output="\1" dest="4">
17 <expression noclean="1">(.+)</expression>
19 <RegExp input="$$1" output="\1/\2\3" dest="7">
20 <expression noclean="1">(.+)([-!])(.+)</expression>
22 <RegExp input="$$1" output="\1" dest="6">
23 <expression noclean="1">(.+)(?:Ft%2e|Feat%2e|%20Ft\.|%20Feat\.|%20and%20)</expression>
25 <RegExp input="$$7" output="\1" dest="4">
26 <expression>(.+)</expression>
28 <RegExp input="$$6" output="\1" dest="4">
29 <expression>(.+)</expression>
33 </CreateArtistSearchUrl>
34 <GetArtistSearchResults dest="8">
35 <RegExp input="$$5" output="<results sorted="yes">\1</results>" dest="8">
36 <RegExp input="$$1" output="<entity><title>\2</title><genre>\7</genre><url cache="mb-\1-artist.xml">http://musicbrainz.org/ws/2/artist/\1?inc=url-rels</url></entity>" dest="9">
37 <expression repeat="yes" noclean="1">artist id="([^"]*)"(?:\stype="[^"]*")* ext:score="[^"]*"><name>([^<]*)</name>(<sort-name>[^<]*</sort-name>)?(<gender>[^<]*</gender>)?(<country>[^<]*</country>)?(<disambiguation>([^<]*))?</expression>
39 <RegExp input="$$1" output="<entity><title>\2</title><genre>\7</genre><url cache="mb-\1-artist.xml">http://musicbrainz.org/ws/2/artist/\1?inc=url-rels</url></entity>" dest="9">
40 <expression repeat="yes" noclean="1">artist ext:score="[^"]*"(?:\stype="[^"]*")* id="([^"]*)"><name>([^<]*)</name>(<sort-name>[^<]*</sort-name>)?(<gender>[^<]*</gender>)?(<country>[^<]*</country>)?(<disambiguation>([^<]*))?</expression>
42 <RegExp input="$$9" output="\1" dest="5">
43 <expression noclean="1">(.+)</expression>
45 <expression noclean="1"/>
47 </GetArtistSearchResults>
48 <GetArtistDetails dest="3" clearbuffers="no">
49 <RegExp input="$$5" output="<details>\1</details>" dest="3">
51 <RegExp input="$$1" output="\1" dest="8">
52 <expression noclean="1"><artist(?:\stype="[^"]*")* id="([^"]*)"><name>([^<]*)</expression>
55 <RegExp input="$$1" output="\2" dest="9">
56 <expression noclean="1">>http://(www.)?allmusic.com/artist/([^<]*)</expression>
58 <RegExp input="$$1" output="<musicBrainzArtistID>\1</musicBrainzArtistID><name>\2</name>" dest="5">
59 <expression noclean="1"><artist(?:\stype="[^"]*")* id="([^"]*)"><name>([^<]*)</expression>
61 <RegExp input="$$8" conditional="fanarttvthumbs" output="<chain function="GetFanartTvArtistThumbsByMBID">\1</chain>" dest="5+">
64 <RegExp input="$$8" conditional="tadbthumbs" output="<chain function="GetTADBArtistThumbsByMBID">$$8</chain>" dest="5+">
67 <RegExp input="$$8" conditional="htbthumbs" output="<chain function="GetHTBThumbsByMBID">\1</chain>" dest="5+">
70 <RegExp input="$$8" conditional="fanarttvfanart" output="<chain function="GetFanartTvArtistFanartsByMBID">\1</chain>" dest="5+">
73 <RegExp input="$$8" conditional="tadbfanart" output="<chain function="GetTADBArtistFanartsByMBID">$$8</chain>" dest="5+">
76 <RegExp input="$$8" conditional="htbfanart" output="<chain function="GetHTBFanartByMBID">\1</chain>" dest="5+">
79 <RegExp input="$$9" output="<chain function="GetAMGData">\1</chain>" dest="5+">
80 <expression noclean="1">(.+)</expression>
82 <RegExp input="$$9" output="<chain function="AMGFallback">\1</chain>" dest="5+">
83 <expression noclean="1">^$</expression>
85 <RegExp input="$INFO[discogsource]" output="<chain function="GetMBDiscographyByMBID">$$8</chain>" dest="5+">
86 <expression>MusicBrainz</expression>
88 <RegExp input="$INFO[lifespansource]" output="<chain function="GetMBLafeSpanByMBID">$$8</chain>" dest="5+">
89 <expression>MusicBrainz</expression>
91 <RegExp input="$INFO[biogsource]" output="<chain function="GetTADBBiographyByMBID">$$8</chain>" dest="5+">
92 <expression>TheAudioDb.com</expression>
94 <RegExp input="$INFO[genressource]" output="<chain function="GetTADBArtistGenresByMBID">$$8</chain>" dest="5+">
95 <expression>TheAudioDb.com</expression>
97 <RegExp input="$INFO[discogsource]" output="<chain function="GetTADBDiscographyByMBID">$$8</chain>" dest="5+">
98 <expression>TheAudioDb.com</expression>
100 <RegExp input="$INFO[lifespansource]" output="<chain function="GetTADBLifeSpanByMBID">$$8</chain>" dest="5+">
101 <expression>TheAudioDb.com</expression>
103 <expression noclean="1"/>
107 <GetAMGData dest="5" clearbuffers="no">
108 <RegExp input="$$2" output="<details>\1</details>" dest="5">
109 <RegExp input="$$1" output="\1" dest="9">
112 <RegExp input="" output="" dest="2">
115 <RegExp input="$INFO[discogsource]" output="<chain function="GetAMGDiscographyByAMGID">$$9</chain>" dest="2">
116 <expression>allmusic.com</expression>
118 <RegExp input="$INFO[lifespansource]" output="<chain function="GetAMGArtistLifeSpanByAMGID">$$9</chain>" dest="2+">
119 <expression>allmusic.com</expression>
121 <RegExp input="$INFO[biogsource]" output="<chain function="GetAMGBiographyByAMGID">$$9</chain>" dest="2+">
122 <expression>allmusic.com</expression>
124 <RegExp input="$INFO[genressource]" output="<chain function="GetAMGArtistGenresByAMGID">$$9</chain>" dest="2+">
125 <expression>allmusic.com</expression>
127 <RegExp input="$INFO[stylessource]" output="<chain function="GetAMGArtistStylesByAMGID">$$9</chain>" dest="2+">
128 <expression>allmusic.com</expression>
130 <RegExp input="$INFO[moodssource]" output="<chain function="GetAMGArtistMoodsByAMGID">$$9</chain>" dest="2+">
131 <expression>allmusic.com</expression>
133 <RegExp input="$INFO[yearsasource]" output="<chain function="GetAMGArtistYearsActiveByAMGID">$$9</chain>" dest="2+">
134 <expression>allmusic.com</expression>
136 <RegExp input="$$9" conditional="allmusicartistthumbs" output="<chain function="GetAMGArtistThumbsByAMGID">\1</chain>" dest="2+">
139 <expression noclean="1" />
143 <AMGFallback dest="5" clearbuffers="no">
144 <RegExp input="$$11" output="<details>\1</details>" dest="5">
145 <RegExp input="$INFO[discogfbsource]" output="<chain function="GetMBDiscographyByMBID">$$8</chain>" dest="11+">
146 <expression>MusicBrainz</expression>
148 <RegExp input="$INFO[lifespanfbsource]" output="<chain function="GetMBLafeSpanByMBID">$$8</chain>" dest="11+">
149 <expression>MusicBrainz</expression>
151 <expression noclean="1" />