Skip to main content

一个命令行 IMDb 搜索应用程序,还可以下载电影海报。

项目描述

Imgdb - 命令行 IMDb 搜索应用程序

GitHub 发布 执照:麻省理工学院 存储库大小

Imgdb 徽标

这是一个 Python 命令行应用程序,允许用户获取有关特定标题的 IMDb 信息以及下载其相应的海报。

Imgdb 截屏视频 2

介绍

ImgdbIMDb首字母缩略词的一种玩法。由于该应用程序还可以下载电影海报,因此我将g添加到IMDb以获得一个更接近IMDb的名称,同时也代表主要应用程序的一项功能。背后的想法Imgdb是创建一个简单的命令行应用程序,从 IMDb 和 RottenTomatoes 获取有关特定标题(例如,电影或系列)的信息。

该应用程序利用免费提供的IMDb 数据集 来提取所需的信息(例如,流派、标题、评级等)。为了实现这一点,Imgdb还用于Google Custom Search API确保输入的标题正是用户正在寻找的。

Imgdb还能够通过利用ImageMagick生成包含电影或系列评级的图像来做一些花哨的事情,如下所示:

美国队长:内战海报

要求

Python 依赖项

  • 美丽的汤4
  • 点击
  • 熊猫
  • PyYAML
  • tqdm
  • 棍棒

系统依赖

  • ImageMagick

为了使用图像编辑选项,您应该已ImageMagick在系统上安装。请使用您的发行版的包管理器来安装它。

安装

最简单的安装方法Imgdb是使用pip

pip install imgdb

配置

该应用程序使用yaml位于您的XDG_CONFIG_HOME目录中的配置文件进行配置。首次运行应用程序后,它会在目录中创建一个初始配置文件 ( imgdb.yaml) 。$HOME/.config/imgdb

imgdb.yaml文件应具有以下结构:

general:
    download: true | false
    image editing: true | false
    font: <font name>
    log file path: <path/to/log/file.log>
    update frequency: daily | weekly | bi-weekly | 1d (for 1 day) | 1h (for 1 hour) | etc
interface:
    api:
        google search api key: <google API key>
        imdb custom search id: <custom IMDb search engine ID>

您可以参考imgdb_config_template.yaml示例配置文件。

用法

Usage: imgdb [OPTIONS]

Options:
    --mov TEXT      The title of the movie.
    --tv TEXT       The title of the series.
    --tvmini TEXT   The title of the mini series.
    --debug TEXT    The logging level of the application.
    --logfile TEXT  The path of the log file.
    --freq TEXT     The update frequency of the datasets.
    --font TEXT     The font used to generate the rating image.
    -d              Download the movie's poster image.
    -e              Save the edited image containing the movie's ratings.
    --help          Show this message and exit.

首次运行应用程序时,它会尝试从imdb.com/interfaces下载所需的 IMDb 数据集。您可以将它们视为庞大的 IMDb 数据库的每日快照。应用程序需要这些数据集来提取和显示有关特定电影或系列的信息。我选择了这个解决方案,因为它允许Imgdb从存储在用户计算机上的数据集中获取几乎所有信息。与抓取相比,这使应用程序更可靠。

默认情况下,这些数据集每周自动更新。但是,您始终可以使用上述--freq选项更改自动更新频率。在大多数情况下,您并不需要非常频繁地更新它们。一个weekly甚至一个bi-weekly更新间隔就足够了。

要使用该应用程序,您还需要一个 Google API 密钥以及一个 IMDb 自定义搜索引擎 ID。 有关如何获取和使用 API 密钥的更多信息,您可以参考相关的Google 文档。要创建 IMDb 自定义搜索引擎 (Google),您可以参考此 链接

正确设置应用程序后,您可以像这样调用它:

imgdb --mov "The Dark Knight" -de

上述命令将在您的终端中显示以下信息:

Title: The Dark Knight
Genres: Action, Crime, Drama
Year: 2008
Runtime: 152 min
IMDb Rating: 9.0
RottenTomatoes Rating: 94
Description: The Dark Knight: Directed by Christopher Nolan. With 
             Christian Bale, Heath Ledger, Aaron Eckhart, Michael 
             Caine. When the menace known as the Joker wreaks havoc 
             and chaos on the people of Gotham, Batman must accept 
             one of the greatest psychological and physical tests 
             of his ability to fight injustice.
➜ Downloading: The_Dark_Knight.jpg - Size: 274 KiB

100%|██████████████████████████████████| 281k/281k [00:00<00:00, 3.15MiB/s]
Edited image saved as: The_Dark_Knight_by_imgdb.png

它还将下载电影的海报 ( The_Dark_Knight.jpg) 并将其保存在当前目录中。评级图像将The_Dark_Knight_by_imgdb.png如下所示:

Imgdb 徽标

为了获得最佳效果,您应该使用像Maler这样的良好设计字体,这是上图中使用的应用程序的默认字体。

要获取可与应用程序一起使用的已安装字体列表,您可以发出以下命令:

convert -list font

去做

  • 添加多结果搜索选项
  • 添加无 API 搜索选项
  • 添加 JSON 输出

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

imgdb-0.9.1.tar.gz (993.5 kB 查看哈希

已上传 source

内置分布

imgdb-0.9.1-py3-none-any.whl (996.6 kB 查看哈希)

已上传 py3