J'ai récemment découvert une application d'organisation de films qui récupère ses données sur le site Web de la Base de données IMDB .
Fait IMDB fournit-il une API pour cela, ou existe-t-il des API de tiers ?
J'ai récemment découvert une application d'organisation de films qui récupère ses données sur le site Web de la Base de données IMDB .
Fait IMDB fournit-il une API pour cela, ou existe-t-il des API de tiers ?
L'IMDb dispose d'une API publique qui, bien que non documentée, est rapide et fiable (utilisée sur le site officiel via AJAX).
https://v2.sg.media-imdb.com/suggests/h/hello.json (à partir de 2019)
imdb${searchphrase}
). Il est également possible de supprimer ou de remplacer le rembourrage via un proxy local.https://v2.sg.media-imdb.com/suggestion/h/hello.json (à partir de 2020)
// 1) Vanilla JavaScript (JSON-P) function addScript(src) { var s = document.createElement('script'); s.src = src; document.head.appendChild(s); } window.imdb$foo = function (results) { / ... / }; addScript('https://sg.media-imdb.com/suggests/f/foo.json');
// 2) Using jQuery (JSON-P) jQuery.ajax({ url: 'https://sg.media-imdb.com/suggests/f/foo.json', dataType: 'jsonp', cache: true, jsonp: false, jsonpCallback: 'imdb$foo' }).then(function (results) { / ... / });
// 3) Pure JSON (with jQuery)
// Use a local proxy to the clean /suggestion
API.
jQuery.getJSON('/api/imdb/?q=foo', function (results) {
/ ... /
});
// 4) Pure JSON (plain JavaScript; Modern ES6, ES2017, and Fetch API) // Serve a "/api" route in your app, that proxies (and caches!) // to v2.sg.media-imdb.com/suggestion/h/hello.json const resp = await fetch('/api/imdb/?q=foo'); const results = await resp.json();
Attention, ces API ne sont pas officielles et peuvent être modifiées à tout moment !
Mise à jour (janvier 2019) : L'API avancée n'existe plus. La bonne nouvelle est que l'API Suggestions prend désormais en charge les fonctions "avancées" de recherche par titre de film et par nom d'acteur.
RE : L'API JSONP ne se replie pas gracieusement, (au moins) elle renvoie un code d'erreur HTTP, mais je suis d'accord qu'il est amusant que le corps de la réponse soit XML.
J'ai récemment remarqué qu'il inclut également une propriété "i" pour les images. L'url qui y est mentionnée est cependant une très grande image (probablement l'originale). Pour obtenir une vignette, IMDb utilise ce qui suit : if (ua.i) { c.img = { src: ua.i[0].replace("._V1_.jpg", "._V1._SX40_CR0,0,40,54_.jpg"), width: 40, height: 54 } }
.
Ne pourriez-vous pas simplement spécifier jsonp avec Ajax si vous obtenez json avec jquery et je pense que getjson a été déprécié même lorsque cela a été écrit, il a été déprécié je crois.
New api @ http://www.omdbapi.com
edit : en raison de problèmes juridiques, le service a dû être déplacé vers un nouveau domaine :)
C'est génial, je ne sais pas si c'est le vôtre ou si vous venez de le trouver, mais j'aimerais bien voir quelque chose autour des statistiques de temps de fonctionnement pour savoir à quel point je peux compter dessus :D
Au cas où quelqu'un se poserait la question, il ne s'agit pas de l'API officielle. Voir les réponses de Pekka ou Krinkle pour cela.
IMDB semble distribuer des données, mais uniquement sous forme de fichiers texte :
http://www.imdb.com/interfaces
il existe plusieurs API à ce sujet que vous pouvez rechercher sur Google. Le grattage d'écran est explicitement interdit. Une API officielle semble être en cours d'élaboration, mais c'est déjà le cas depuis des années.
@omouse De la termes : Robots and Screen Scraping: You may not use data mining, robots, screen scraping, or similar data gathering and extraction tools on this site, except with our express written consent as noted below.
Cela ne signifie pas que ces conditions sont automatiquement applicables dans toutes les juridictions, mais elles le sont dans beaucoup d'entre elles.
Oui, mais ce dialogue s'adressait aux "robots". Apparemment, mon robot ne comprend pas l'anglais, alors tant pis.
Une autre alternative légale pour obtenir des infos sur le film est le Pourri Tomates (par Flixster) de l'API. http://developer.rottentomatoes.com/
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
10 votes
Existe-t-il une API pour les critiques sur IMDB ?
1 votes
Pour créer un lien vers IMDB, utilisez le format suivant.
<a href="http://www.imdb.com/title/{{{ $imdb_id }}}">{{{ $imdb_id }}}</a>
BTW: imdb_id follows this pattern: tt0000000
1 votes
Je ne sais pas si j'ai un problème avec la lecture de l'article, mais j'ai un problème avec la lecture de l'article. Je suis à la recherche de quelque chose comme ça
0 votes
@Airlike Possiblement Plex . Je sais avec certitude que l'un d'entre eux organise des films et peut extraire des données d'IMDB.