Fessでは、クロール対象のファイルパスをCSVファイルに記載して、そのファイルパス群をクロールすることができます。 CSVファイルリストを利用するクロールは第19回で紹介しています。

ファイルリストを利用したクロールでは、SMB認証が適用されたファイルサーバを利用することも多いので、今回はクロール対象のファイルサーバにアクセスする際に認証が必要な場合の設定について説明します。

CSVファイルの作成

まずはクロールするファイルのパスを記述するCSVファイルを作成します。 CSVファイルのフォーマットは第19回の「CsvListDataStore」を参照してください。

今回は、クロール対象のファイルを\\localhost\public フォルダ内に配置しているものとして、CSVファイルを以下のように作成します。

modify,smb://localhost/public/msoffice/test.doc
modify,smb://localhost/public/msoffice/test.xlsx
modify,smb://localhost/public/msoffice/test.xls
modify,smb://localhost/public/msoffice/test.pptx
modify,smb://localhost/public/msoffice/test.ppt
modify,smb://localhost/public/msoffice/test.docx
modify,smb://localhost/public/pdf/test.pdf

CSVファイルを保存する場所とファイル名は任意です。今回はこのCSVファイルが置いてある場所をクロール設定で指定します。

プラグインのインストール

ここからはFessの管理画面での操作になります。 今回使用するFessのバージョンは14.4.0です。

クロール設定の前に、クロール時に使用するプラグインをインストールします。 以前のFessのバージョンでは、fess-ds-csvプラグインはバンドルされていたので、このプラグインのインストール手順は不要です。

Fessの管理画面にログインして「システム」>「プラグイン」>「インストール」をクリックします。 「リモートタブ」で「fess-ds-csv-14.4.0」を選択して、「インストール」をクリックするとプラグインがインストールされます。

インストール後、プラグイン一覧画面を表示して、fess-ds-csvが登録されていることを確認してください。

クロールの設定

管理画面の「クローラー」>「データストア」>「新規作成」をクリックして以下を入力します。

  • 名前
  • ハンドラ名
  • パラメータ
  • スクリプト

名前には任意のクロール設定の名前を入力し、ハンドラ名は「CsvListDataStore」を選択します。

パラメータは次のように記述します。

directories=/tmp/csvlist
fileEncoding=Shift_JIS
crawler.file.auth=example
crawler.file.auth.example.scheme=SAMBA
crawler.file.auth.example.username=username
crawler.file.auth.example.password=password

directoriesに指定するのは、作成したCSVファイルを配置しているディレクトリのパスです。

ファイルサーバをクロールする際の認証情報は、crawler.file.authのプレフィックスの設定名で指定します。 crawler.file.authでは、設定名を任意の文字列で指定します。 今回は、example を設定しています。

SMB認証を利用するので、crawler.file.auth.example.schemeSAMBAを指定します。

ユーザー名とパスワードをそれぞれcrawler.file.auth.example.usernamecrawler.file.auth.example.passwordで設定します。

スクリプトの記述は以下の通りです。

event_type=cell1
url=cell2

クロールの実行

クロール設定の登録後、「システム」>「スケジューラ」>「Default Crawler」から「今すぐ開始」をクリックします。

CSVファイル作成直後に実行するとクロールジョブがCSVファイルを認識しないため、ファイル作成から数分経過してから実行してください。

クロールが完了したら、検索画面にアクセスして検索してみましょう。 クロールしたドキュメントが検索できていれば成功です。

* * *

今回はCSVファイルリストクロール時に認証情報を設定する方法について説明しました。

CSVファイルリストクロールは、大規模なファイルサーバをクロールする際に、ファイルサーバから更新対象のファイル一覧情報を取得して、必要なファイルだけを効率良くクロールする場合に利用することができます。 大規模なファイルサーバであれば、多くの場合で認証が必要になります。CSVファイルリストクロールで認証設定が必要な場合はこの方法で利用してみてください。