IMDB是否提供API? [关闭]
最近,我发现了一个电影管理器应用程序,该应用程序从IMDB数据库中获取其数据。
IMDB是否为此提供API或任何可用的第三方API?
#1楼
我非常有信心,您找到的应用程序实际上是从Themoviedb.org的API获取信息的(他们从IMDB中获得了大部分东西)。 他们有一个免费的开放API,供电影组织者/ XMBC应用程序使用。
#2楼
http://app.imdb.com上有一个供移动应用程序使用的JSON API。
但是,警告相当严重:
仅供IMDb书面授权的客户使用。
未经授权客户的作者和用户对其行为承担全部法律责任。
我想这是为那些需要付费才能通过其API访问数据的开发人员准备的。
编辑 :只是为了踢,我写了一个客户端库试图从API读取数据,您可以在这里找到它: api-imdb
显然,您应该注意该警告,实际上,请使用TheMovieDB之类的东西作为更好和更开放的数据库。
然后,您可以使用此Java API包装器(由我编写): api-themoviedb
#3楼
NetFilx更是一种个性化媒体服务,但是您可以将其用于电影的公共信息。 它支持Javascript和OData。
还要看一下JMDb :信息与使用IMDb网站时获得的信息基本相同。
#4楼
好的,我发现了这只IMDB刮板
适用于C#: http : //web3o.blogspot.de/2010/11/aspnetc-imdb-scraping-api.html
此处的PHP: http : //web3o.blogspot.de/2010/10/php-imdb-scraper-for-new-imdb-template.html
或者是针对c#的imdbapi.org实现:
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Xml.Linq;
using HtmlAgilityPack; // http://htmlagilitypack.codeplex.com/public class IMDBHelper
{public static imdbitem GetInfoByTitle(string Title){string url = "http://imdbapi.org/?type=xml&limit=1&title=" + Title;HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);req.Method = "GET";req.UserAgent = "Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))";string source;using (StreamReader reader = new StreamReader(req.GetResponse().GetResponseStream())){source = reader.ReadToEnd();}HtmlDocument doc = new HtmlDocument();doc.LoadHtml(source); XDocument xdoc = XDocument.Parse(doc.DocumentNode.InnerHtml, LoadOptions.None);imdbitem i = new imdbitem();i.rating = xdoc.Descendants("rating").Select(x => x.Value).FirstOrDefault();i.rating_count = xdoc.Descendants("rating_count").Select(x => x.Value).FirstOrDefault();i.year = xdoc.Descendants("year").Select(x => x.Value).FirstOrDefault();i.rated = xdoc.Descendants("rated").Select(x => x.Value).FirstOrDefault();i.title = xdoc.Descendants("title").Select(x => x.Value).FirstOrDefault();i.imdb_url = xdoc.Descendants("imdb_url").Select(x => x.Value).FirstOrDefault();i.plot_simple = xdoc.Descendants("plot_simple").Select(x => x.Value).FirstOrDefault();i.type = xdoc.Descendants("type").Select(x => x.Value).FirstOrDefault();i.poster = xdoc.Descendants("poster").Select(x => x.Value).FirstOrDefault();i.imdb_id = xdoc.Descendants("imdb_id").Select(x => x.Value).FirstOrDefault();i.also_known_as = xdoc.Descendants("also_known_as").Select(x => x.Value).FirstOrDefault();i.language = xdoc.Descendants("language").Select(x => x.Value).FirstOrDefault();i.country = xdoc.Descendants("country").Select(x => x.Value).FirstOrDefault();i.release_date = xdoc.Descendants("release_date").Select(x => x.Value).FirstOrDefault();i.filming_locations = xdoc.Descendants("filming_locations").Select(x => x.Value).FirstOrDefault();i.runtime = xdoc.Descendants("runtime").Select(x => x.Value).FirstOrDefault();i.directors = xdoc.Descendants("directors").Descendants("item").Select(x => x.Value).ToList();i.writers = xdoc.Descendants("writers").Descendants("item").Select(x => x.Value).ToList();i.actors = xdoc.Descendants("actors").Descendants("item").Select(x => x.Value).ToList();i.genres = xdoc.Descendants("genres").Descendants("item").Select(x => x.Value).ToList();return i;}public class imdbitem{public string rating { get; set; }public string rating_count { get; set; }public string year { get; set; }public string rated { get; set; }public string title { get; set; }public string imdb_url { get; set; }public string plot_simple { get; set; }public string type { get; set; }public string poster { get; set; }public string imdb_id { get; set; }public string also_known_as { get; set; }public string language { get; set; }public string country { get; set; }public string release_date { get; set; }public string filming_locations { get; set; }public string runtime { get; set; }public List<string> directors { get; set; }public List<string> writers { get; set; }public List<string> actors { get; set; }public List<string> genres { get; set; }}}
#5楼
https://deanclatworthy.com/tools.html是IMDB API,但由于滥用而被关闭。
#6楼
IMDB本身似乎在分发数据,但仅在文本文件中:
http://www.imdb.com/interfaces
您可以通过多种API来使用Google。 明确禁止刮屏。 官方的API似乎正在开发中,但是已经有很多年了。
#7楼
这是一个简单的解决方案,可以根据来自Krinkle的查询按名称获取显示:
您可以通过让服务器获取URL而不是尝试直接使用AJAX直接获取URL来解决同源策略,而不必使用JSONP来做到这一点。
Javascript(jQuery):
function getShowOptionsFromName (name) {$.ajax({url: "ajax.php",method: "GET",data: {q: name},dataType: "json"}).done(function(data){console.log(data);});
}
PHP(在ajax.php文件中):
$q = urlencode($_GET["q"]);
echo file_get_contents("http://www.imdb.com/xml/find?json=1&nr=1&tt=on&q=$q");
#8楼
找到这个
IMDbPY是一个Python软件包,可用于检索和管理有关电影,人物,人物和公司的IMDb电影数据库的数据。
http://imdbpy.sourceforge.net/
#9楼
是的,但不是免费的。
.....年费从15,000美元到更高不等,这取决于数据的听众和被许可的数据。
网址:-http: //www.imdb.com/licensing/
#10楼
该deanclatworthy似乎仍然有效,还有另一个: http ://imdbapi.poromenos.org/
#11楼
如果您想要电影详细信息API,可以考虑
OMDB API是开放电影数据库,它返回IBDB评分,IMDB投票,您也可以包括烂番茄评分。
否则你可以使用
My Api Films允许您使用IMDB ID进行搜索并返回详细信息,但是它具有请求限制。
#12楼
如果您需要电视信息,可以尝试TVmaze.com 。
它是免费,快速且可靠的。 这是开发者页面:
http://api.tvmaze.com/
#13楼
截至2016年8月,IMDB似乎还没有直接的API,但是我看到很多人在上面编写刮板和东西。 这是使用票房buzz API访问电影数据的更标准的方法。 免费计划每天提供JSON格式的所有响应和每天5000个查询
API提供的内容清单
- 电影学分
- 电影ID
- 电影影像
- 通过IMDB ID获取电影
- 获取最新电影列表
- 获取新版本
- 获取电影上映日期
- 获取特定电影的翻译列表
- 获取电影的视频,预告片和预告片
- 按标题搜索电影
- 还支持电视节目,游戏和视频
#14楼
新api @ http://www.omdbapi.com
编辑:由于法律问题不得不将服务移至新域:)
#15楼
TMDb API呢?
您可以使用Movie.imdbLookup通过imdb_id搜索
XBMC Media Center似乎正在使用它
https://www.themoviedb.org/documentation/api
#16楼
这是一个提供API的Python模块,可从IMDB网站获取数据
http://techdiary-viki.blogspot.com/2011/03/imdb-api.html
#17楼
获取电影信息的另一种合法选择是Rotten-Tomatoes API (由Fandango提供)。
#18楼
IMDb具有一个公共API,尽管未记录,但它是快速且可靠的(通过AJAX在官方网站上使用)。
搜索建议API
- https://sg.media-imdb.com/suggests/a/aa.json
- https://v2.sg.media-imdb.com/suggests/h/hello.json (备用)
- 格式:JSON-P
- 注意:格式为JSON-P,并且无法自定义回调参数。 要跨域使用它,您必须使用他们选择的函数名称(格式为
imdb${searchphrase}
)。 或者,可以通过本地代理剥离或替换填充。
// 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 that strips the "padding" of JSON-P,
// e.g. "imdb$foo(" and ")", leaving pure JSON only.
jQuery.getJSON('/api/imdb/?q=foo', function (results) {/* ... */
});// 4) Pure JSON (ES2017 and Fetch API)
// Using a custom proxy at "/api" that strips the JSON-P padding.
const resp = await fetch('/api/imdb/?q=foo');
const results = await resp.json();
高级搜索
- 名称搜索(json): http : //www.imdb.com/xml/find? json=1&nr=1&nm=on&q=jeniffer+garner
- 标题搜索(xml): http : //www.imdb.com/xml/find? xml=1&nr=1&tt=on&q= lost
- 格式:XML
- 优势:同时支持电影标题和演员姓名(与Recommendations API不同)。
请注意,这些API是非官方的,并且随时可能更改!
更新(2019年1月):高级API不再存在。 好消息是,建议API现在支持电影标题和演员名称。
#19楼
最近在SXSWi 2012的“ Mashery Lounge”中,有一个叫rovi的类似于IMDB的API的摊位。 它不是免费的API,但根据我与之交谈的销售人员的说法,他们会根据您的预算提供转股或固定使用费。 我还没有用过,但是看起来很酷。
IMDB是否提供API? [关闭]相关推荐
- html5通过api调数据库,使用HTML5数据库API [关闭](Using HTML5 Database API [closed])
使用HTML5数据库API [关闭](Using HTML5 Database API [closed]) 我正在开发一个使用phonegap/cordova 2.2的web应用程序,并希望将数据存储 ...
- 视频编辑SDK---我们只提供API,任你自由设计炫酷的功能
面对相对复杂的视频编辑处理技术,你是否束手无策? 在短视频应用中,有一定技术难度的视频编辑技术中,我们提出了一种全新的解决方法:画板和画笔. 短视频处理,用画板和画笔,就够了! 我们设计了极其简单易懂 ...
- 【Groovy】Gradle 构建工具 ( 自动下载并配置构建环境 | 提供 API 扩展与开发工具集成 | 内置 Maven 和 Ivy 依赖管理 | 使用 Groovy 编写构建脚本 )
文章目录 一.Gradle 自动下载并配置构建环境 二.Gradle 提供 API 扩展与开发工具集成 三.Gradle 内置 Maven 和 Ivy 依赖管理 四.Gradle 使用 Groovy ...
- go vs python 对接外部web api_python--web--让python提供api服务--aiohttp-Go语言中文社区
aiohttp介绍 官网上有这样一句话介绍:Async HTTP client/server for asyncio and Python 翻译过来就是 基于asyncio和Python实现的异步HT ...
- python--web--让python提供api服务--aiohttp
aiohttp介绍 官网上有这样一句话介绍:Async HTTP client/server for asyncio and Python 翻译过来就是 基于asyncio和Python实现的异步HT ...
- 文字转语音 - 搭建微软tts整合web服务提供api接口(免费)
微软tts是业界公认文字转语音效果最佳 本文使用docker搭建微软tts服务并提供api接口对外提供服务 对接官方免费在线体验接口,搭建后可免费进行调用使用,不保证永久稳定可用 调用方式 url:h ...
- Apache 的 POI提供API
Apache POI在线 API : http://tool.oschina.net/apidocs/apidoc?api=apache-POI 一. POI简介Apache POI是Apache软 ...
- jeesite如何配置swagger_用JeeSite快速搭建网站(3):提供api接口给移动端
上次在用JeeSite快速搭建网站(2):单表的增删改查中我们实现单表数据的增删改查了,现在终于来冲击最终目标--提供api接口给移动端. 准备工作:安装swagger 以前的工作流是 服务端写好接口 ...
- 什么是API?为什么要提供API?
什么是API?为什么要提供API? API是系统的基石,是Windows的一砖一瓦. 明确一个概念,软件是运行在系统平台的支持上的,软件的功能其实就是向系统伸请,并由系统完成这些功能的过程. 那么软件 ...
最新文章
- springboot继承组件_SpringBoot如何扩展引入的组件,以及如何自动配置组件原理
- lucene源码分析(7)Analyzer分析
- 算法训练 字符串的展开
- Windows命令行(DOS命令)教程
- 如何实现插入数据时自动更新另外一个表的内容
- java byte 转换int_java byte负数转换int失真?
- Oracle备份恢复概要
- htc 常见错误和解决方案
- abandon_mysql_使用Druid报错abandon connection, open stackTrace
- 四川大学计算机徐教授,我院举行“BIM实验室开放+徐教授专题讲座”活动
- 燃尽图 (Burn up and Burn down Chart)—介绍
- Android解决输入法自动弹出方法大全
- CART回归树原理及示例
- Windows系统下的部分dos命令
- 生活明朗,万物可爱,人间值得,未来可期
- PHP能获取word页数吗,PHP MS Word文件页数
- Aria2 GUI for Mac V1.3 极速版 百度网盘高速下载神器
- badboy脚本开发事件
- 如何从NOAA下载中国测站水文数据
- Map Tile地图切片小工具