Client (für den Eigenbedarf entwickelt), der deutsche Informationen von thetvdb.com bezieht und diese in Form von JSON bereitstellt. Der Client stellt Methoden für den Zugriff auf die thetvdb.com-Api bereit. Für die Verwendung wird ein API-Key von thetvdb.com benötigt.
npm install hpv-tvdb
Das Modul verwendet request für die Aufrufe der tvdb-Api und xml2js für die Konvertierung der XML-Dateien
var tvdbc = require('hpv-tvdb'),
client = new tvdbc.TvDbClient(%apikey),
callback = function(err, result) {
console.log(result);
};
client.getSeriesByTitle('Bones', callback);
// SerienId entnehmen
client.getSeasonsBySeriesId('75682', callback);
For browser-usage include dist/tvdbClient.js
or use your favorite bundler.
<script src="dist/tvdbClient.js"></script>
<script>
var client = new TvDbClient(%apikey);
...
</script>
%apikey = von thetvdb.com bereitgestellter API-Key
Alle Aufrufe verlangen eine callback-Funktion in der Form
function(error, result)
Aufruf
getSeriesByTitle(%titel, callback)
Result
Array von Serieninfo-Objekten
SerienInfo-Objekt
[
{
name: Serienname,
alias: Alias-Name,
imageurl: URL zum Banner,
id: Serien-ID,
language: Sprache,
overview: Serienübersicht,
imdbid: ID auf imdb.com
}
]
Aufruf
getSeasonsBySeriesId(%Serien-Id, callback)
Result
Ein Serienobjekt mit allen Staffeln und Episoden. Enthält alle nötigen Daten ausser den Staffelbildern.
Serien-Objekt
{
series: {
name: Serienname,
id: Serien-Id,
overview: Übersicht,
actors: [Array von Schuspielernamen],
genre: [Array von Genres],
rating: Einstufung,
network: TV-Sender,
language: Sprache,
firstaired: Erstaustrahlung
},
seasons: {
'%Staffelnummer': {
seasonid: ID der Staffel,
seasonnumber: Staffelnummer,
episodes: [
{
name: Titel der Episode,
number: Nummer der Folge,
id: ID der Episode,
overview: Inhalt der Episode,
directors: [Array von Regiseuren],
writers: [Array von Drehbuchautoren],
firstaired: Erstausstrahlungsdatum,
imageurl: URL zum Episodenbild,
gueststars: [Array von Gaststars],
language: Sprache der Episode (de)
}
]
}
}
}
%Staffelnummer = '1', '2,' ...
Aufruf
getBannersBySeriesId(%Serien-Id, callback)
Result
Ein Objekt strukturiert nach Bildarten (bannertype)
{
'%Bildart' : [{
url: Url zum Bild,
language: Sprache
}]‚
}
Mögliche Bildarten sind:
- fanart
- poster
- season
- series
Aufruf
getActorsBySeriesId(%Serien-Id, callback)
Result
Array von Bildobjekten
Bildobjekt
[
{
name: Schauspielername,
role: Rollenname,
id: Schauspieler-Id,
imageurl: Url zum Bild des Schauspielers
}
]