検索結果にサムネイル画像を表示する方法

【連載】

簡単導入! OSS全文検索サーバFess入門

【第13回】検索結果にサムネイル画像を表示する方法

[2019/05/31 08:00]菅谷 信介 ブックマーク ブックマーク

  • 開発ソフトウェア

開発ソフトウェア

今回はFessのサムネイル画像表示機能について紹介します。

検索結果画面が文字ばかりだとすこし見づらいと感じるかもしれません。また、検索結果画面に表示されるタイトルや要約だけでは中身が何かわからないということもあるでしょう。そのような場合、Fessではサムネイル画像で視覚的に内容を伝えることが可能です。

検索画面

設定方法

Fessでサムネイル画像を表示する設定は簡単です。管理画面の「システム」>「全般」からサムネイル表示を有効にしてください。

全般の設定

サムネイル画像生成に必要な情報はクロール時に収集しているので、設定変更後には再度クロールしてください。

サムネイル画像の表示

Fessでは検索結果のMIME Typeを元にサムネイル画像を生成しています。クロールしたドキュメントがサムネイル画像生成可能なMIME Typeであるならば、サムネイル画像を生成可能です。

Fessでは標準でHTMLファイルのサムネイル画像を生成できます。また、Linux系のOSであれば、PDFファイル、MS Office系ファイル、PostScriptファイルのサムネイル生成も可能です。サムネイル画像の生成処理はMIME Typeごとに設定して追加することもできます。

HTMLファイルのサムネイル画像

HTMLファイルのサムネイル画像表示について説明します。

HTMLファイルのサムネイル画像は、HTML内でサムネイル画像として指定されている画像、またはHTML内に含まれる画像を利用します。サムネイル画像は次の順番でHTML内を探します。

  1. name属性がthumbnailで指定されたmetaタグのcontentの値
  2. property属性がog:imageで指定されたmetaタグのcontentの値
  3. imgタグでサムネイルに適したサイズの画像

上記の順で見つかった画像をサムネイル画像として利用します。

imgタグで指定されている画像の検出についてはfess_config.propertiesに以下の設定があります。標準では、縦横幅が100px以上かつ縦横比が3倍以下の画像が検出対象になります。

thumbnail.html.image.min.width=100
thumbnail.html.image.min.height=100
thumbnail.html.image.max.aspect.ratio=3.0

その他のサムネイル

対象ファイルから何かしらのコマンド等を用いて、サムネイル画像が生成できれば検索結果に表示できます。

Fessでは、Linux環境向けにbin/generate-thumbnailを提供しています。generate-thumbnailスクリプトは対象ファイルに適した画像生成コマンドがあれば、それを利用してサムネイル画像を生成します。このスクリプトはapp/WEB_INF/classes/fess_thumbnail.xmlで利用するように設定されています。これらのファイルを変更することで、さまざまなサムネイル画像処理を設定できます。

PDFファイルのサムネイル画像生成については、ImageMagickのconvertコマンドが利用できます。Redhat系OSであれば、ImageMagickのインストールはyumを利用してインストールできます。

$ sudo yum install ImageMagick

MS Office系ファイルのサムネイル画像の生成では、ImageMagickに加えてunoconvを利用します。ImageMagickと同様にunoconvを以下のようにインストールできます。

$ sudo yum install unoconv

サムネイル画像のサイズ

HTMLファイルのサムネイル画像サイズはfess_config.propertiesの以下の値で生成してサムネイル画像が保存されます。

thumbnail.html.image.thumbnail.width=100
thumbnail.html.image.thumbnail.height=100

generate-thumbnailで生成される画像サイズは、そのスクリプト内でIMAGE_SIZEの値を変更することでサムネイル画像のサイズを変更できます。

*  *  *

今回はFessのサムネイルについて説明しました。Fessのサムネイル機能を用いることで、より見やすい検索画面の構築が可能となります。 Windows環境でも、fess_thumbnail.xmlで画像を生成するコマンド等を指定することでサムネイル画像を表示できるようになります。

著者紹介

菅谷 信介 (Shinsuke Sugaya)

Apache PredictionIOにて、コミッター兼PMCとして活動。また、自身でもCodeLibs Projectを立ち上げ、オープンソースの全文検索サーバFessなどの開発に従事。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

もっと知りたい!こちらもオススメ

【連載】知りたい! カナコさん 皆で話そうAIのコト [12] AIが「対話のルール」自体を変える!? - ニッポン放送 吉田尚記氏(後編)

【連載】知りたい! カナコさん 皆で話そうAIのコト [12] AIが「対話のルール」自体を変える!? - ニッポン放送 吉田尚記氏(後編)

今回、対談をお願いしたのはニッポン放送のアナウンサー 吉田尚記氏。前半戦は、「そもそもコミュニケーションとは何なのか」「AIと人間の対話の"ゴール"はどこなのか」といったテーマで大いに盛り上がった。続く後半では、対話AIの現状や課題について共有するなかから、AIが人間社会の「対話のルール」そのものを変えていく可能性が飛び出した。

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします

会員登録(無料)

注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
知りたい! カナコさん 皆で話そうAIのコト
教えてカナコさん! これならわかるAI入門
対話システムをつくろう! Python超入門
Kubernetes入門
AWSで作るクラウドネイティブアプリケーションの基本
ソフトウェア開発自動化入門
PowerShell Core入門
徹底研究! ハイブリッドクラウド
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

ページの先頭に戻る