Se connecter à IMDB

A tout fait cela avant? Il me semble qu'il devrait y avoir un service Web, mais je n'en trouve pas. Je suis en train d'écrire une application pour un usage personnel qui montrerait simplement des informations de base de IMDB.

21
demandé sur Nescio 2008-09-19 11:36:36

9 réponses

il n'y a pas de service web disponible.

mais il y a assez de racloirs html écrits dans toutes les langues pour répondre à vos besoins!

j'ai utilisé le .NET 3.5 Imdb Services opensource project dans quelques projets personnels.

résultats google 1 minute:

14
répondu Davy Landman 2011-08-25 19:57:06

les bibliothèques pour IMDb semblent peu fiables à l'heure actuelle et très inefficaces. J'aimerais vraiment que IMDb crée un service web.

après un peu de recherche, j'ai trouvé une alternative raisonnable à IMDb . Il fournit toutes les informations de base telles que vue d'ensemble, année, évaluations, affiches, bandes-annonces, etc.:

Le Film De La Base De Données (TMDb) .

il fournit un service Web avec wrappers pour plusieurs langues et semble fiable jusqu'à présent. Les résultats de la recherche ont été, pour moi, plus précis ainsi.

17
répondu Arical 2017-04-13 08:14:11

la seule" API "que la Bmdi publie est un ensemble de fichiers de données en texte clair contenant des listes formatées d'acteurs, réalisateurs, films, etc. Vous auriez probablement besoin d'écrire votre propre analyseur à moins que quelqu'un a publié une pour votre langue. Essayez les recherches Google comme "api imdb "et"analyseur imdb".

un screen scraper pourrait être utile, mais ils interdisent spécifiquement scrapers dans leurs conditions d'utilisation.

8
répondu skymt 2008-09-19 07:44:16

bien que ceci ait été posté il y a plus de deux ans, voici un simple code python

import urllib2

movie_id = raw_input('Enter the ID of the movie: ')
json = urllib2.urlopen('http://imdbapi.com/?i=' + movie_id + '&r=json')

print json.read()

save as imdb.py et puis exécuter comme dans shell ou terminal ou quoi que ce soit

si vous voulez des données xml, remplacez JSON par xml

veuillez noter que ceci utilise le imdbapi.com site web pour retourner un résultat json visitez ce site web pour voir plus d'options.

5
répondu philberndt 2011-07-12 15:17:28

voici ma propre solution en utilisant RegEx:

private const string UglyMovieRegex = "(?<=5>|3>)(Cast|Director:|Fun\sStuff|Genre:|Plot:|Runtime:|Tagline:|Writers:)"
                                                + "|href=\"[\w\d/]+?(Genres|name|character)/([\w]+?)/\".*?>([.\-\s\w]+)</a>"
                                                + "|(?<=h\d>)([.\w\s'\-\"]+)(?=<a\sc|</d|\|)";

Regex MovieData = new Regex (UglyMovieRegex, RegexOptions.Compiled | RegexOptions.Multiline | RegexOptions.Singleline );
5
répondu Nescio 2014-05-26 21:47:29

IMDB interdit scrapers, et de changer la mise en page de temps en temps, donc parsing HTML est une option, mais être prêt à ajuster votre code 2-3 fois par an (été là, fait cela, abandonné). Ils ont un service payant donnant un accès complet aux données, mais vous devrez également expliquer ce que c'est, et les convaincre que vous ne construisez pas un site web concurrentiel (j'avais un lien vers cela, mais il semble avoir changé et ne peut pas le trouver maintenant).

4
répondu Milan Babuškov 2008-09-19 07:48:53

une autre alternative est d'exécuter la base de données IMDB sur votre machine locale. Java Movie Database importe les fichiers de la base de données IMDB, les convertit et fournit une copie locale d'IMDB. IMDB a certaines fonctionnalités que Java Movie Database N'a pas et visa-versa, mais si ce que vous recherchez est un accès rapide à toutes les données, il pourrait être intéressant de donner un essai.

2
répondu 2009-08-23 23:03:33

maintenant il y a une API (non documentée) comme http://www.imdb.com/xml/find?json=1&q=Harry+Potter . Voir est-ce que IMDB fournit une API?

2
répondu mb21 2017-05-23 12:09:45

TRYNT Heavy Technologies fournit (gratuitement) un service web pour extraire les données de base de L'IMDb -- consultez leur site à http://www.trynt.com/trynt-movie-imdb-api / . Ils disposent également d'un service distinct pour les données de télévision.

1
répondu 2008-11-14 19:36:26