Ich verwende YouTube API v3, um YouTube zu durchsuchen.
https://developers.google.com/youtube/v3/docs/search
Wie Sie sehen können, enthält die Antwort JSON keine Videodauer. Gibt es eine Möglichkeit, die Videodauer zu ermitteln?
Rufen Sie vorzugsweise nicht erneut eine API für jedes Element im Ergebnis auf (es sei denn, dies ist der einzige Weg, um die Dauer zu ermitteln).
php
objective-c
rest
youtube-api
youtube-data-api
Rukshan Marapana
quelle
quelle
Antworten:
Sie müssen die Video-Ressource der YouTube-Daten-API anrufen, nachdem Sie den Suchanruf getätigt haben. Sie können bis zu 50 Video-IDs in eine Suche einfügen, sodass Sie sie nicht für jedes Element aufrufen müssen.
https://developers.google.com/youtube/v3/docs/videos/list
Sie möchten einstellen
part=contentDetails
, weil die Dauer da ist.Zum Beispiel der folgende Aufruf:
Gibt dieses Ergebnis:
Die Zeit ist als ISO 8601-Zeichenfolge formatiert. PT steht für Time Duration, 4M ist 4 Minuten und 13S ist 13 Sekunden.
quelle
datetime.timedelta
, das grundsätzlich zu allem formatiert werden kann.Ich habe es verstanden!
Dort wird die Zeit für die YouTube-API-Version 3 zurückgegeben (der Schlüssel besteht übrigens aus;). Ich habe verwendet,
$vId
dass ich von der zurückgegebenen Liste der Videos des Kanals, von dem ich die Videos zeige, ...Es klappt. Google muss WIRKLICH die Dauer in das Snippet aufnehmen, damit Sie alles mit einem Anruf statt mit zwei erhalten können. Es steht auf der Liste "Wontfix".
quelle
}
?Ich habe die folgende Klasse geschrieben, um die Dauer von YouTube-Videos mithilfe der YouTube-API v3 abzurufen (es werden auch Miniaturansichten zurückgegeben):
Bitte beachte, dass du API_KEY benötigst, um die YouTube-API verwenden zu können:
quelle
Dieser Code extrahiert die YouTube-Videodauer mithilfe der YouTube-API v3, indem eine Video-ID übergeben wird. Es hat bei mir funktioniert.
Sie können den eigenen YouTube-API-Schlüssel Ihrer Domain unter https://console.developers.google.com abrufen und Anmeldeinformationen für Ihre eigenen Anforderungen generieren.
quelle
Sie können die Dauer aus dem Feld 'contentDetails' in der json-Antwort abrufen.
quelle
Dauer in Sekunden mit Python 2.7 und der YouTube API v3:
quelle
Youtube Data 3 API, Konvertierung von Dauerzeichenfolge in Sekunden in Python
Beispiel:
quelle