Vidéo Youtube titre de l'API v3 sans clé API?
est-il possible d'obtenir le titre de la vidéo en utilisant L'ID de la vidéo avec API v3 sans la clé API? Je n'ai trouvé aucune information ou exemple d'obtention du titre dans la documentation de L'API.
3 réponses
pour obtenir le titre de la vidéo, vous va besoin D'une clé API, et vous aurez besoin de faire une demande à:
https://www.googleapis.com/youtube/v3/videos?part=snippet&id={COMMA_DELIMITED_LIST_OF_IDS}&key={YOUR_API_KEY}
dans le paquet retourné, le titre sera items.snippet.title
vous ne pouvez pas récupérer toutes les données API sans une clé API; toutes les requêtes API sont sur un système de quota, et la clé est utilisée pour déterminer combien de charge limite quotidienne de votre application. Un appel comme celui-ci, cependant, est assez peu coûteux; il s'agit d'un total de 3 unités (2 pour le snippet et 1 pour la requête elle-même). Puisque vous obtenez 50 000 000 d'unités par jour et pouvez récupérer jusqu'à 50 snippets pour ces mêmes 3 unités, il n'est pas très difficile d'utiliser la clé API.
pas besoin de clé API
pour obtenir le titre de la vidéo, vous aurez et non besoin D'une clé API, et vous aurez besoin de faire une demande à:
https://noembed.com/embed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ
changez l'URL YouTube pour la vidéo dont vous avez besoin.
il fonctionne également avec Vimeo et beaucoup d'autres sites pris en charge avec des URLs comme:
https://noembed.com/embed?url=https://vimeo.com/45196609
détails
il n'est pas possible d'obtenir le titre de la vidéo en utilisant L'ID de la vidéo avec API v3 sans la clé API si vous utilisez l'API directement. L'API de données YouTube V2 est dépréciée (voir: déviation de L'API de données YouTube v2: Foire Aux Questions ) et actuellement L'API YouTube ne supporte pas oembed, il avec JSONP comme il se doit (voir Problème 4329: oembed, il rappel pour JSONP ).
mais heureusement il y a le service Noembed qui vous permet d'obtenir les titres (et autres données) des vidéos YouTube avec JSONP et sans la clé API.
Démo
Voici une démo simple pour obtenir le titre avec jQuery:
var id = 'dQw4w9WgXcQ';
var url = 'https://www.youtube.com/watch?v=' + id;
$.getJSON('https://noembed.com/embed',
{format: 'json', url: url}, function (data) {
alert(data.title);
});
Voir DÉMO sur JS Bin.
Voir aussi ces questions:
il semble que c'est précisément pourquoi le oEmbed avait été conçu pour.
oEmbed est un format permettant une représentation intégrée d'une URL sur sites de tiers. L'API simple permet à un site web d'afficher intégré contenu (tels que des photos ou des vidéos) lorsqu'un utilisateur poste un lien pour que ressources, sans avoir à analyser la ressource directement.
ce document est stocké sur GitHub .
plus d'informations sur le format à: https://oembed.com
https://www.youtube.com/oembed?url=http%3A//youtube.com/watch%3Fv%3DM3r2XDceM6A&format=json
sortie D'échantillon:
{
"version": "1.0",
"type": "video",
"provider_name": "YouTube",
"provider_url": "http://youtube.com/",
"width": 425,
"height": 344,
"title": "Amazing Nintendo Facts",
"author_name": "ZackScott",
"author_url": "http://www.youtube.com/user/ZackScott",
"html":
"<object width=\"425\" height=\"344\">
<param name=\"movie\" value=\"http://www.youtube.com/v/M3r2XDceM6A&fs=1\"></param>
<param name=\"allowFullScreen\" value=\"true\"></param>
<param name=\"allowscriptaccess\" value=\"always\"></param>
<embed src=\"http://www.youtube.com/v/M3r2XDceM6A&fs=1\"
type=\"application/x-shockwave-flash\" width=\"425\" height=\"344\"
allowscriptaccess=\"always\" allowfullscreen=\"true\"></embed>
</object>",
}
Voici une liste des fournisseurs de contenu qui ont déclaré adhérer au format:
"provider_name": "23HQ",
"provider_name": "Adways",
"provider_name": "Alpha App Net",
"provider_name": "amCharts Live Editor",
"provider_name": "Animatron",
"provider_name": "Animoto",
"provider_name": "Audiomack",
"provider_name": "AudioSnaps",
"provider_name": "Blackfire.io",
"provider_name": "Box Office Buz",
"provider_name": "Buttondown",
"provider_name": "Cacoo",
"provider_name": "Carbon Health",
"provider_name": "CatBoat",
"provider_name": "ChartBlocks",
"provider_name": "chirbit.com",
"provider_name": "CircuitLab",
"provider_name": "Clipland",
"provider_name": "Clyp",
"provider_name": "Codepen",
"provider_name": "Codepoints",
"provider_name": "CodeSandbox",
"provider_name": "CollegeHumor",
"provider_name": "Commaful",
"provider_name": "Coub",
"provider_name": "Crowd Ranking",
"provider_name": "Cyrano Systems",
"provider_name": "Daily Mile",
"provider_name": "Dailymotion",
"provider_name": "Deviantart.com",
"provider_name": "Didacte",
"provider_name": "Dipity",
"provider_name": "DocDroid",
"provider_name": "Docs",
"provider_name": "Dotsub",
"provider_name": "edocr",
"provider_name": "eduMedia",
"provider_name": "EgliseInfo",
"provider_name": "Embed Articles",
"provider_name": "Embedly",
"provider_name": "Ethfiddle",
"provider_name": "Eyrie",
"provider_name": "Facebook (Video)",
"provider_name": "Flat",
"provider_name": "Flickr",
"provider_name": "FOX SPORTS Australia",
"provider_name": "FrameBuzz",
"provider_name": "FunnyOrDie",
"provider_name": "Geograph Britain and Ireland",
"provider_name": "Geograph Channel Islands",
"provider_name": "Geograph Germany",
"provider_name": "Getty Images",
"provider_name": "Gfycat",
"provider_name": "GIPHY",
"provider_name": "Gyazo",
"provider_name": "HuffDuffer",
"provider_name": "Hulu",
"provider_name": "iFixit",
"provider_name": "IFTTT",
"provider_name": "Indaco",
"provider_name": "Infogram",
"provider_name": "Inoreader",
"provider_name": "inphood",
"provider_name": "Instagram",
"provider_name": "iSnare Articles",
"provider_name": "ivlismusic",
"provider_name": "Kickstarter",
"provider_name": "Kidoju",
"provider_name": "Kit",
"provider_name": "Kitchenbowl",
"provider_name": "Knacki",
"provider_name": "LearningApps.org",
"provider_name": "Ludus",
"provider_name": "MathEmbed",
"provider_name": "me.me",
"provider_name": "Meetup",
"provider_name": "MixCloud",
"provider_name": "Moby Picture",
"provider_name": "Modelo",
"provider_name": "myBeweeg",
"provider_name": "nanoo.tv",
"provider_name": "nfb.ca",
"provider_name": "Odds.com.au",
"provider_name": "Office Mix",
"provider_name": "Official FM",
"provider_name": "On Aol",
"provider_name": "Ora TV",
"provider_name": "Orbitvu",
"provider_name": "Oumy",
"provider_name": "Pastery",
"provider_name": "Pixdor",
"provider_name": "Poll Daddy",
"provider_name": "Port",
"provider_name": "Portfolium",
"provider_name": "Punters",
"provider_name": "Quiz.biz",
"provider_name": "Quizz.biz",
"provider_name": "RapidEngage",
"provider_name": "Reddit",
"provider_name": "ReleaseWire",
"provider_name": "RepubHub",
"provider_name": "ReverbNation",
"provider_name": "Roomshare",
"provider_name": "Rumble",
"provider_name": "Sapo Videos",
"provider_name": "Screen9",
"provider_name": "Screencast.com",
"provider_name": "Screenr",
"provider_name": "ScribbleMaps",
"provider_name": "Scribd",
"provider_name": "ShortNote",
"provider_name": "Shoudio",
"provider_name": "Show the Way, actionable location info",
"provider_name": "Silk",
"provider_name": "Simplecast",
"provider_name": "Sizzle",
"provider_name": "Sketchfab",
"provider_name": "SlideShare",
"provider_name": "SmugMug",
"provider_name": "SocialExplorer",
"provider_name": "Songlink",
"provider_name": "SoundCloud",
"provider_name": "Soundsgood",
"provider_name": "SpeakerDeck",
"provider_name": "Spotful",
"provider_name": "Spreaker",
"provider_name": "Streamable",
"provider_name": "StreamOneCloud",
"provider_name": "Sutori",
"provider_name": "Sway",
"provider_name": "Ted",
"provider_name": "The New York Times",
"provider_name": "They Said So",
"provider_name": "TickCounter",
"provider_name": "Toornament",
"provider_name": "Topy",
"provider_name": "Twitch",
"provider_name": "Twitter",
"provider_name": "Ubideo",
"provider_name": "UOL",
"provider_name": "Ustream",
"provider_name": "Utposts",
"provider_name": "Uttles",
"provider_name": "VeeR VR",
"provider_name": "Verse",
"provider_name": "VEVO",
"provider_name": "VideoJug",
"provider_name": "Vidlit",
"provider_name": "Vimeo",
"provider_name": "Vlipsy",
"provider_name": "wecandeo",
"provider_name": "Wiredrive",
"provider_name": "wizer.me",
"provider_name": "Wootled",
"provider_name": "WordPress.com",
"provider_name": "Yes, I Know IT!",
"provider_name": "YFrog",
"provider_name": "YouTube",
"provider_name": "ZProvider",
notez que cela ne signifie pas que CORS est activé sur ces sites.
ces données sont principalement faites pour être analysé côté serveur.
la plupart de ces informations peuvent également être obtenues en analysant les attributs <meta og>
open graph html d'une page donnée.
Voir http://ogp.me/ pour les infos sur l'open graph.