J'essaie donc de récupérer 10 dernières vidéos des téléchargements des utilisateurs.
Maintenant, le seul problème est que la seule date visible dans la requête playlistitems est publishedAt qui est la date à laquelle la vidéo a été téléchargé - pas la date à laquelle il a été rendu public, ce qui fait une énorme différence.
J'ai remarqué que je peux saisir la bonne date via la demande vidéo, mais cela ne semble tout simplement pas être le meilleur endroit pour le faire.
Permettez-moi de vous montrer un exemple de ce que je traite.
Prenons le canal Maroon5.
forUserName: Maroon5VEVO
OBTENIR https://www.googleapis.com/youtube/v3/channels?part=contentDetails&forUsername=Maroon5VEVO&key= {YOUR_API_KEY}
https://developers.google.com/youtube/v3/docs/channels/list#try-it
Voici où nous prenons le:
uploadsId: UUN1hnUccO4FD5WfM7ithXaw
On peut donc interroger:
OBTENIR https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=UUN1hnUccO4FD5WfM7ithXaw&maxResults=50&key= {YOUR_API_KEY}
https://developers.google.com/youtube/v3/docs/playlistItems/list#try-it
puis nous pouvons jeter un oeil à quelques vidéos.
Prenons le dernier. Pour moi, c'est celui-ci:
"title": "Maroon 5 - Cet été va faire mal comme un ... (Explicit)", "videoId": "Wa64gOwuIyE"
Et, surtout :
"publishedAt": "2015-06-01T17: 41: 58.000Z",
Maintenant, saisissons plus de détails sur cette vidéo, en exécutant cette requête:
OBTENIR https://www.googleapis.com/youtube/v3/videos?part=snippet&id=Wa64gOwuIyE&key= {YOUR_API_KEY}
https://developers.google.com/youtube/v3/docs/videos/list#try-it
Ici, nous obtenons une vue plus détaillée avec une date qui est ... différente!
"publishedAt": "2015-06-01T20: 00: 01.000Z",
Cela signifie que la date de publication dans les listes de lecture est en fait la date du téléchargement - pas le moment où la vidéo a été rendue publique.
Dans notre liste de 10 derniers articles, nous voulons les DERNIÈRES vidéos publiées, et non les dernières vidéos téléchargées.
Si vous savez comment l'aborder, partagez-le.
Voici mon extrait pour l'instant (travailler avec une mauvaise date de publication)
$.get(
"https://www.googleapis.com/youtube/v3/playlistItems",{
part : 'snippet',
maxResults : 10,
playlistId : UPLOADS_PID,
key: YOUR_API_KEY},
function(data) {
$.each( data.items, function(i, item ) {
(...)
});
}
);
Je crois que vous pouvez utiliser/rechercher le point de terminaison. Comme vous souhaitez récupérer les 10 dernières vidéos des téléchargements des utilisateurs, vous pouvez utiliser l'identifiant de chaîne au lieu de l'identifiant de la playlist.
Demande:
GET https://www.googleapis.com/youtube/v3/search?part=snippet&channelId={CHANNEL_ID}&maxResults=10&order=date&type=video&key={YOUR_API_KEY}