API 或任何其他方式访问 IMDB TOP 250 列表?

Posted

技术标签:

【中文标题】API 或任何其他方式访问 IMDB TOP 250 列表?【英文标题】:API or any other way to access IMDB TOP 250 list? 【发布时间】:2012-07-26 04:49:56 【问题描述】:

我进行了广泛的研究,发现我找不到 API。是否有任何可用的 API 来获取 TOP 250 列表?

或者通过其他方式访问列表?

我尝试访问页面 html 并在我的 JSP 后端进行解析。但这里的问题是我只得到一个骨架,列表作为 AJAX 加载。

任何网络抓取方式?

任何使用想法将不胜感激......

【问题讨论】:

为什么不对脚本调用的端点发出请求(进行 ajax 调用)? Does IMDB provide an API? 的可能重复项 我上面评论中的链接包含解决方案。 但没有办法获得 TOP 250 名单。我在“TOP 250 名单”上是具体的 【参考方案1】:

最简单的方法是从IMDb alternate interfaces下载数据。

您想要的文件是 ratings.list.gz。排名前 250 的电影在第一部分列出。

【讨论】:

我相信它们每周都会更新。无论如何,前 250 部电影不会每天发生太大变化。 我编写了一个脚本,将所有.list.gz 文件转换为 JSON,这应该更容易使用:github.com/oxplot/imdb2json Mansour:这些文件已经很大了,我猜 JSON 会更大,因为有用于格式化的标签。大多数人所做的是将它们加载到关系数据库中进行查询。我已经为 SQL Server 做了这个,其他人已经为 python/mysql 编写了一个解析器。【参考方案2】:

是的,现在有一个名为 omdbapi 的 API

http://www.omdbapi.com/

【讨论】:

不错的一个..!但它的功能非常有限。 @JayModi 我知道它仍然是我所知道的唯一一种类型【参考方案3】:

可从那里获得:

http://api.myapifilms.com/imdb.do

获取它的网址:(您需要一个免费令牌)

 http://api.myapifilms.com/imdb/top?token=GET A FREE API KEY&format=json&data=0

(不是我的网站)

【讨论】:

【参考方案4】:

我也遇到了这个问题,我通过一些刮擦解决了它。这是 Python 代码:

import requests
import re

top250_url = "http://akas.imdb.com/chart/top"


def get_top250():
    r = requests.get(top250_url)
    html = r.text.split("\n")
    result = []
    for line in html:
        line = line.rstrip("\n")
        m = re.search(r'data-titleid="tt(\d+?)">', line)
        if m:
            _id = m.group(1)
            result.append(_id)
    #
    return result

它返回前 250 部电影的 IMDb ID。然后,使用 imdbpy 包,您可以询问有关电影的所有信息,因为您有电影 ID。

【讨论】:

【参考方案5】:

https://www.theimdbapi.com/ 这个很棒,我从现在开始使用

【讨论】:

以上是关于API 或任何其他方式访问 IMDB TOP 250 列表?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 中从 IMDB 获取信息

如何将 odoo 与 IMDb 集成?

IMDB Top 250 与豆瓣电影250的比较?

IMDB TOP 250爬虫

OMDB Api 是不是从 IMDB 检索信息

IMDB TOP 250爬虫