imdb-movies 是一个基于 Node.js 的 npm 包,可以让你轻松地获取 IMDb 上的电影数据。在前端开发中,我们经常需要获取一些有关电影的信息,比如电影名称、导演、演员、评分等,而 IMDb 是一个全球最大的电影数据库,可以提供丰富的数据源。本文将详细介绍 imdb-movies 的使用方法,包括安装、API 说明和示例代码。
安装
使用 imdb-movies 前,你需要先安装 Node.js 和 npm。如果你还未安装,可以参考官方文档进行安装。
安装 imdb-movies 很简单,只需要在控制台输入以下命令:
npm install imdb-movies --save
API 说明
imdb-movies 的 API 相对简单,只有两个方法:
1. search
该方法用于搜索电影,接收一个参数(字符串),表示要搜索的电影名称:
const imdb = require('imdb-movies'); imdb.search('Inception') .then(data => console.log(data)) .catch(err => console.error(err));
输出结果如下:
[ { id: 'tt1375666', title: 'Inception', year: '2010' } ]
2. get
该方法用于获取电影的详细信息,需要传递电影 ID(ttXXXXXXX)作为参数:
const imdb = require('imdb-movies'); imdb.get('tt1375666') .then(data => console.log(data)) .catch(err => console.error(err));
输出结果如下:
-- -------------------- ---- ------- - --- ------------ ------ ------------ ----- ------- ------- ------ --------- ------------ ------- ----- - --------- ---------- ------- --------------- ------ ------ --- -- ----- -- ----- --- ------ --------- ------- ------- --- --- -- ------------- ---------- ----- ------- ---------------------------------------------------- -------- ----------------------------------------- -
示例代码
以下是一个基于 imdb-movies 的电影搜索和展示的示例代码:
-- -------------------- ---- ------- ----- ---- - ----------------------- ----- ---------- - --------------------------------------- ----- ----------- - ---------------------------------------- ----- ---------- - --------------------------------------- ------------------------------------- ----- -- - ----------------------- ----- ----------- - ------------------------- -- -------------- ------- ------------------------ ---------- -- - -------------------- - --- -- ------ -- ------------- - -------------------- - ----------- -- ------- ------------- ------- - ----- ------ - -------------- -- - ----- -- - ----------------------------- ------------ - ------------ ---------------------------- -- -- - ------------------ --------------- -- - ----- ----- - ------------------------------ --------------- - -------- ----- ----- - --------------------------------- --------------- - -------- --------------- - ---- ------------------------------- -- -- ---------------- ----- ----- - ----------------------------- --------------- - ---------------- ----- --- - ------------------------------ ------- - ----------------- ----- -------- - ---------------------------- ------------------ - --------------------------- ----------------------- ----- ---- - ---------------------------- -------------- - ----------------------- ------------------------ ----- ----- ---- - ---------------------------- -------------- - ----------------------- ------------------- ------------------------- ------------------------- ----------------------- ---------------------------- ------------------------ ------------------------ --------------------------------- -- ---------- -- -------------------- --- ------ --- --- -------------------- -- - ------------------------------ --- -- ---------- -- -------------------- ---
在 HTML 中,需要有一个表单(id 属性为 search-form,包含一个 input 元素,id 属性为 search-input)和一个无序列表(id 属性为 movies-list)。
当用户输入电影名称并点击搜索按钮时,触发 submit 事件。我们首先阻止浏览器默认行为,获取搜索输入框的内容,然后调用 imdb.search 方法进行搜索。如果搜索结果为空,则在页面上显示“Sorry, no results found.”。如果搜索结果不为空,则将每个电影标题显示在列表中,并为每个电影标题添加点击事件。
当用户点击电影标题时,我们获取该电影的 ID,然后调用 imdb.get 方法获取该电影的详细信息。我们将该信息显示在弹出框中,包括电影名称、导演、演员、电影剧情和海报。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600562c881e8991b448e0093