Estoy tratando de obtener información de IMDB usando JavaScript. El siguiente código funciona para Título, Año, enlace IMDB, pero cuando trato de obtener "Tiempo de ejecución", "Director", "Lanzado", etc., aparece como indefinido. ¡Por favor ayuda!
Este es el formato de datos: https://www.omdbapi.com/?i=tt4779682&apikey=ba1f4581
Código:
var data; function getanswer(q){ $.get("https://www.omdbapi.com/?s="+q+"&apikey=ba1f4581", function(rawdata){ var rawstring =JSON.stringify(rawdata); data =JSON.parse(rawstring); var title = data.Search[0].Title; var year = data.Search[0].Year; var director = data.Search[0].Director; var imdburl="https://www.imdb.com/title/"+data.Search[0].imdbID+"/"; var posterurl =data.Search[0].Poster; document.getElementById('answer').innerHTML="<h1>"+title+"</h1><br> <img src= '"+posterurl+"'><br><p> Year Released:"+year+"</p> <br><p> Year Released:"+director+"</p> <br> <p> IMDB page: <a href='"+imdburl+"'target='_blank'>"+imdburl+"</a></p>"; }); } <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <html> <head></head> <body onload="getanswer(document.getElementById('querybox').value)"> <!doctype html> <input value="The Meg" onkeyup="getanswer(document.getElementById('querybox').value)" id="querybox"> <div id="answer"></div> </body> </html>De acuerdo con la documentación de la API, estaba usando el parámetro s que no devolvería Runtime/Director/etc. Puede usar el parámetro t y eliminar Search[0].
A continuación se muestra el código que funcionaría:
var data; function getanswer(q){ $.get("https://www.omdbapi.com/?t="+q+"&apikey=ba1f4581", function(rawdata){ var rawstring =JSON.stringify(rawdata); data =JSON.parse(rawstring); console.log(data); var title = data.Title; var year = data.Year; var director = data.Director; var imdburl="https://www.imdb.com/title/"+data.imdbID+"/"; var posterurl =data.Poster; document.getElementById('answer').innerHTML="<h1>"+title+"</h1><br> <img src= '"+posterurl+"'><br><p> Year Released:"+year+"</p> <br><p> Year Released:"+director+"</p> <br> <p> IMDB page: <a href='"+imdburl+"'target='_blank'>"+imdburl+"</a></p>"; }); }