diff options
Diffstat (limited to 'addons/metadata.tvdb.com/tvdb.xml')
-rw-r--r-- | addons/metadata.tvdb.com/tvdb.xml | 296 |
1 files changed, 296 insertions, 0 deletions
diff --git a/addons/metadata.tvdb.com/tvdb.xml b/addons/metadata.tvdb.com/tvdb.xml new file mode 100644 index 0000000000..3abf447af3 --- /dev/null +++ b/addons/metadata.tvdb.com/tvdb.xml @@ -0,0 +1,296 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- should be self-explanatory --> +<scraper framework="1.1" date="2009-01-27" name="TheTVDB.com" content="tvshows" thumb="tvdb.png" language="multi" cachePersistence="00:15"> + <GetSettings dest="3"> + <RegExp input="$$5" output="<settings>\1</settings>" dest="3"> + <RegExp input="$$1" output="<url function="GetLanguages">http://www.thetvdb.com/api/1D62F2F90030C444/languages.xml</url>" dest="5"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting label="Use DVD Order" type="bool" id="dvdorder" default="false" enable="!eq(1,true)"></setting>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting label="Use Absolute Ordering (Single Season)" type="bool" id="absolutenumber" default="false" enable="!eq(-1,true)"></setting>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting type="sep"></setting>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting label="Enable Fanart" type="bool" id="fanart" default="true"></setting>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting label="Prefer Posters" type="bool" id="posters" default="false"></setting>" dest="5+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<setting type="sep"></setting>" dest="5+"> + <expression/> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetSettings> + + <NfoUrl dest="3"> + <RegExp input="$$1" output="<url cache="\1.xml">http://www.thetvdb.com/api/1D62F2F90030C444/series/\1/all/$INFO[language].zip</url><id>\1</id>" dest="3"> + <expression>http://(?:www\.)?thetvdb.com/(?:index\.php)?\?tab=series&id=([0-9]+)</expression> + </RegExp> + </NfoUrl> + + <EpisodeGuideUrl dest="3"> + <RegExp input="$$1" output="\1" dest="3"> + <expression>(.*?http://www.thetvdb.com.*)</expression> + </RegExp> + <RegExp input="$$1" output="\1" dest="3"> + <expression>(.*?http://thetvdb.com.*)</expression> + </RegExp> + </EpisodeGuideUrl> + + <!-- input: $1=query string --> + <!-- returns: the url we should use to do the search --> + <CreateSearchUrl dest="3"> + <RegExp input="$$1" output="http://www.thetvdb.com/api/GetSeries.php?seriesname=\1$$4&language=$INFO[language]" dest="3"> + <RegExp input="$$2" output="%20(\1)" dest="4"> + <expression clear="yes">(.+)</expression> + </RegExp> + <expression/> + </RegExp> + </CreateSearchUrl> + + <!-- input: $1=html $2=search query --> + <!-- returns: results in xml format <results><movie><title>*</title><url>*</url>*#urls<extra>*</extra></movie>*</results> --> + <GetSearchResults dest="1"> + <RegExp output="\1" dest="3"> + <expression noclean="1"><Data>(.*)</Data></expression> + </RegExp> + <RegExp input="$$4" output="<?xml version="1.0" encoding="utf-8" standalone="yes"?><results>\1</results>" dest="1"> + <RegExp input="$$3" output="<entity><title>\3</title><language>\2</language><url cache="\1.xml">http://www.thetvdb.com/api/1D62F2F90030C444/series/\1/all/\2.zip</url><id>\1</id></entity>" dest="4"> + <expression repeat="yes"><seriesid>([0-9]*)</seriesid>[^<]*<language>([^<]*)</language>[^<]*<SeriesName>([^<]*)</SeriesName></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetSearchResults> + + <!-- input: $1..#urls=html --> + <!-- input: $(#urls+1): extra !--> + <!-- returns: results in xml format <details><plot>*</plot><director>*</director><premiered>*</premiered><episodeguide>*</episodeguide></details> --> + <GetDetails dest="7"> + <RegExp input="$$4" output="<?xml version="1.0" encoding="utf-8" standalone="yes"?><details>\1</details>" dest="7"> + <RegExp input="$$1" output="\1" dest="5"> + <expression noclean="1"><Series>.*?<id>$$2</id>(.*)</expression> + </RegExp> + <RegExp input="$$5" output="<plot>\1</plot>" dest="4"> + <expression noclean="1"><Overview>([^<]*)</Overview></expression> + </RegExp> + <RegExp input="$$2" output="<id>\1</id>" dest="4+"> + <expression/> + </RegExp> + <RegExp input="$$1" output="<mpaa>\1</mpaa>" dest="4+"> + <expression><ContentRating>([^<]*)</ContentRating></expression> + </RegExp> + <RegExp input="$$5" output="<premiered>\1</premiered>" dest="4+"> + <expression><FirstAired>([^<]*)</FirstAired></expression> + </RegExp> + <RegExp input="$$5" output="<rating>\1</rating>" dest="4+"> + <expression><Rating>([^<]*)</Rating></expression> + </RegExp> + <RegExp input="$$5" output="<studio>\1</studio>" dest="4+"> + <expression><Network>([^<]*)</Network></expression> + </RegExp> + <RegExp input="$$5" output="<title>\1</title>" dest="4+"> + <expression><SeriesName>([^<]*)</SeriesName></expression> + </RegExp> + <RegExp input="$$5" output="\1" dest="10"> + <expression noclean="1"><Genre>([^<]*)</Genre></expression> + </RegExp> + <RegExp input="$$10" output="<genre>\1</genre>" dest="4+"> + <expression repeat="yes">([^\|]*)\|</expression> + </RegExp> + <RegExp input="$$10" output="<genre>\1</genre>" dest="4+"> + <expression repeat="yes">([^,]*),</expression> + </RegExp> + <RegExp input="$$10" output="<genre>\1</genre>" dest="4+"> + <expression>([^\|,]+)$</expression> + </RegExp> + <!-- actors with thumbs --> + <RegExp input="$$5" output="<actor><name>\2</name><role>\3</role><thumb>http://thetvdb.com/banners/\1</thumb></actor>" dest="4+"> + <expression repeat="yes" noclean="1,2,3"><Actor>.*?<Image>([^<]+)</Image>.*?<Name>([^<]*)</Name>.*?<Role>([^<]*)</expression> + </RegExp> + <!-- actors without thumbs --> + <RegExp input="$$5" output="<actor><name>\2</name><role>\3</role></actor>" dest="4+"> + <expression repeat="yes" noclean="1,2,3"><Actor>.*?<Image>([^<]*)</Image>.*?<Name>([^<]*)</Name>.*?<Role>([^<]*)</expression> + </RegExp> + <RegExp conditional="posters" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>poster</BannerType></expression> + </RegExp> + <RegExp input="$$5" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>series</BannerType>[^<]*<BannerType2>graphical</BannerType2>[^<]*<Language>$INFO[language]</Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>series</BannerType>[^<]*<BannerType2>graphical</BannerType2>[^<]*<Language>[a-z][^$INFO[language]]*</Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>series</BannerType>[^<]*<BannerType2>text</BannerType2>[^<]*<Language>$INFO[language]</Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>series</BannerType>[^<]*<BannerType2>text</BannerType2>[^<]*<Language>[a-z][^$INFO[language]]*</Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>series</BannerType>[^<]*<BannerType2>blank</BannerType2>[^<]*<Language></Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb type="season" season="\2">http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>season</BannerType>[^<]*<BannerType2>season</BannerType2>[^<]*<Language>$INFO[language]</Language>[^<]*<Season>([0-9]+)</Season></expression> + </RegExp> + <RegExp input="$$5" output="<thumb type="season" season="\2">http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>season</BannerType>[^<]*<BannerType2>season</BannerType2>[^<]*<Language>[a-z][^$INFO[language]]*</Language>[^<]*<Season>([0-9]+)</Season></expression> + </RegExp> + <RegExp input="$$5" output="<thumb type="season" season="\2">http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>season</BannerType>[^<]*<BannerType2>seasonwide</BannerType2>[^<]*<Language>$INFO[language]</Language>[^<]*<Season>([0-9]+)</Season></expression> + </RegExp> + <RegExp input="$$5" output="<thumb type="season" season="\2">http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>season</BannerType>[^<]*<BannerType2>seasonwide</BannerType2>[^<]*<Language>[a-z][^$INFO[language]]*</Language>[^<]*<Season>([0-9]+)</Season></expression> + </RegExp> + <RegExp input="$$5" conditional="!posters" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>poster</BannerType></expression> + </RegExp> + <RegExp input="$$5" output="<thumb type="season" season="-1">http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>poster</BannerType></expression> + </RegExp> + <RegExp conditional="fanart" input="$$7" output="<fanart url="http://thetvdb.com/banners/">\1</fanart>" dest="4+"> + <RegExp input="$$5" output="<thumb dim="\2" colors="\3" preview="_cache/\1">\1</thumb>" dest="7+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>fanart</BannerType>[^<]*<BannerType2>([^<]*)</BannerType2>[^<]*<Colors>([^<]*)</Colors>[^<]*<Language>$INFO[language]</Language></expression> + </RegExp> + <RegExp input="$$5" output="<thumb dim="\2" colors="\3" preview="_cache/\1">\1</thumb>" dest="7+"> + <expression repeat="yes"><BannerPath>([^<]*)</BannerPath>[^<]*<BannerType>fanart</BannerType>[^<]*<BannerType2>([^<]*)</BannerType2>[^<]*<Colors>([^<]*)</Colors>[^<]*<Language>[a-z][^$INFO[language]]*</Language></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + <RegExp input="$$2" output="<episodeguide><url cache="$$2.xml">http://www.thetvdb.com/api/1D62F2F90030C444/series/\1/all/$INFO[language].zip</url></episodeguide>" dest="4+"> + <expression/> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetDetails> + + <!-- input: $1=html !--> + <!-- input: $2=series url !--> + <!-- returns: results in xml format <episodeguide><episode><title>*</title><url>*</url><season>*</season><epnum>*</epnum><thumb>*</thumb><id>*</id><aired>*</aired></episode>*</episodeguide> !--> + <GetEpisodeList dest="3"> + <RegExp input="$$4" output="<episodeguide>\1</episodeguide>" dest="3"> + <RegExp input="$$2" output="\1" dest="10"> + <expression>http://www.thetvdb.com/api/1D62F2F90030C444/series/([0-9]*)/all/$INFO[language].zip</expression> + </RegExp> + <RegExp conditional="!dvdorder"> + <!-- Regular episodes (Absolute order) --> + <RegExp conditional="absolutenumber" input="$$1" output="<episode><id>\1</id><title>\2</title><aired>\3</aired><epnum>\4</epnum><season>1</season><url cache="$$10.xml">$$2</url></episode>" dest="4+"> + <expression repeat="yes"><Episode>.*?<id>([0-9]*).*?<EpisodeName>([^<]*).*?<FirstAired>([^<]*).*?<absolute_number>([0-9]*).*?</Episode></expression> + </RegExp> + <!-- Specials (Absolute order) --> + <RegExp conditional="absolutenumber" input="$$1" output="<episode><id>\1</id><title>\2</title><aired>\4</aired><epnum>\3</epnum><season>0</season><url cache="$$10.xml">$$2</url></episode>" dest="4+"> + <expression repeat="yes"><Episode>.*?<id>([0-9]*).*?<EpisodeName>([^<]*).*?<EpisodeNumber>([0-9]*).*?<FirstAired>([^<]*).*?<SeasonNumber>0</SeasonNumber>.*?</Episode></expression> + </RegExp> + <!-- Normal episodes --> + <RegExp conditional="!absolutenumber" input="$$1" output="<episode><title>\2</title><url cache="$$10.xml">$$2</url><epnum>\3</epnum><season>\5</season><id>\1</id><aired>\4</aired></episode>" dest="4"> + <expression repeat="yes"><Episode>.*?<id>([0-9]+).*?<EpisodeName>([^<]*).*?<EpisodeNumber>([0-9]+)[^<]*.*?<FirstAired>([^<]*)</FirstAired>.*?<SeasonNumber>([0-9]+)[^<]*.*?</Episode></expression> + </RegExp> + </RegExp> + <!-- DVD order --> + <RegExp conditional="dvdorder" input="$$1" output="<episode><title>\4</title><url cache="$$10.xml">$$2</url><epnum>\2</epnum><season>\3</season><id>\1</id><aired>\5</aired></episode>" dest="4"> + <expression repeat="yes"><Episode>.*?<id>([0-9]+).*?<Combined_episodenumber>([0-9]+).*?<Combined_season>([0-9]+).*?<EpisodeName>([^<]*).*?<FirstAired>([^<]*)</FirstAired>.*?</Episode></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetEpisodeList> + + <!-- input: $1=html --> + <!-- returns: results in xml format <details><writer>*</writer><director>*</director><cast>*</cast><rating>*</rating><rank>*</rank><plot>*</plot> --> + <GetEpisodeDetails dest="3"> + <RegExp input="$$4" output="<?xml version="1.0" encoding="utf-8" standalone="yes"?><details>\1</details>" dest="3"> + <RegExp input="$$1" output="\1" dest="8"> + <expression noclean="1"><Episode>.*?<id>$$2</id>(.*?)</Episode></expression> + </RegExp> + <RegExp input="$$8" output="<plot>\1</plot>" dest="4"> + <expression><Overview>([^<]*)</Overview></expression> + </RegExp> + <RegExp input="$$8" output="\1" dest="6"> + <expression noclean="1"><Writer>([^<]*)</Writer></expression> + </RegExp> + <RegExp input="$$6" output="<credits>\1</credits>" dest="4+"> + <expression repeat="yes">([^\|]*)\|</expression> + </RegExp> + <RegExp input="$$6" output="<credits>\1</credits>" dest="4+"> + <expression repeat="yes">([^,]*),</expression> + </RegExp> + <RegExp input="$$6" output="<credits>\1</credits>" dest="4+"> + <expression>([^\|,]+)$</expression> + </RegExp> + <RegExp input="$$8" output="\1" dest="6"> + <expression noclean="1"><Director>([^<]*)</Director></expression> + </RegExp> + <RegExp input="$$6" output="<director>\1</director>" dest="4+"> + <expression repeat="yes">([^\|]*)\|</expression> + </RegExp> + <RegExp input="$$6" output="<director>\1</director>" dest="4+"> + <expression repeat="yes">([^,]*),</expression> + </RegExp> + <RegExp input="$$6" output="<director>\1</director>" dest="4+"> + <expression>([^\|,]+)$</expression> + </RegExp> + <RegExp input="$$8" output="\1" dest="6"> + <expression noclean="1"><GuestStars>([^<]*)</GuestStars></expression> + </RegExp> + <RegExp input="$$6" output="<actor><name>\1</name></actor>" dest="4+"> + <expression repeat="yes">([^\|]*)\|</expression> + </RegExp> + <RegExp input="$$6" output="<actor><name>\1</name></actor>" dest="4+"> + <expression repeat="yes">([^,]*),</expression> + </RegExp> + <RegExp input="$$6" output="<actor><name>\1</name></actor>" dest="4+"> + <expression>([^\|,]+)$</expression> + </RegExp> + <RegExp input="$$8" output="<title>\1</title>" dest="4+"> + <expression><EpisodeName>([^<]*)</EpisodeName></expression> + </RegExp> + <!-- Regular Episodes - Absolute Order --> + <RegExp conditional="absolutenumber" input="$$8" output="<season>1</season><episode>\2</episode>" dest="4+"> + <expression><SeasonNumber>([1-9]*)</SeasonNumber>.*?<absolute_number>([0-9]*)</absolute_number></expression> + </RegExp> + <!-- Specials - Absolute Order --> + <RegExp conditional="absolutenumber" input="$$8" output="<season>0</season><episode>\1</episode>" dest="4+"> + <expression><EpisodeNumber>([0-9]*)</EpisodeNumber>.*?<SeasonNumber>0</SeasonNumber></expression> + </RegExp> + <!-- Normal Season/Episodes --> + <RegExp conditional="!absolutenumber" input="$$8" output="<season>\1</season>" dest="4+"> + <expression><SeasonNumber>([^<]*)</SeasonNumber></expression> + </RegExp> + <RegExp conditional="!absolutenumber" input="$$8" output="<episode>\1</episode>" dest="4+"> + <expression><EpisodeNumber>([^<]*)</EpisodeNumber></expression> + </RegExp> + <RegExp input="$$8" output="<thumb>http://thetvdb.com/banners/\1</thumb>" dest="4+"> + <expression><filename>([^<]+)</filename></expression> + </RegExp> + <RegExp input="$$8" output="<aired>\1</aired>" dest="4+"> + <expression><FirstAired>([^<]+)</FirstAired></expression> + </RegExp> + <RegExp input="$$8" output="<displayseason>\1</displayseason>" dest="4+"> + <expression><airsbefore_season>([^<]+)</airsbefore_season></expression> + </RegExp> + <RegExp input="$$8" output="<displayepisode>\1</displayepisode>" dest="4+"> + <expression><airsbefore_episode>([^<]+)</airsbefore_episode></expression> + </RegExp> + <RegExp input="$$8" output="<displayafterseason>\1</displayafterseason>" dest="4+"> + <expression><airsafter_season>([^<]+)</airsafter_season></expression> + </RegExp> + <RegExp input="$$8" output="<rating>\1</rating>" dest="4+"> + <expression><Rating>([^<]+)</Rating></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetEpisodeDetails> + + <GetLanguages dest="3"> + <RegExp input="$$2" output="<settings><setting label="Language" type="labelenum" id="language" values="$$8" sort="yes" default="en"></setting></settings>" dest="3"> + <RegExp input="$$1" output="\1|" dest="8+"> + <expression repeat="yes"><abbreviation>([^<]*)</abbreviation></expression> + </RegExp> + <expression noclean="1"/> + </RegExp> + </GetLanguages> +</scraper> |