Dropboxのクロール

【連載】

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

【第22回】Dropboxのクロール

[2020/02/19 08:00]菅谷 信介 ブックマーク ブックマーク

読者のなかには、オンラインストレージのDropboxでデータを管理している方もおられるかと思います。今回は、Dropbox内のファイルを検索する方法をご紹介しましょう。Fessのバージョンは、13.4.3を使用します。

Dropboxの設定

まず、DropboxのサイトでDropboxアプリを作成します。このアプリは、FessがDropboxのファイルにアクセスするために必要になるものです。

Dropboxアプリの作成

DropboxのApp Consoleで、「Create App」をクリックして、Dropboxアプリを作成します。設定項目は以下の通りです。

  1. Choose an API:Dropbox Business API
  2. Choose the type of access you need:Team member file access
  3. Name your app:任意の名前を設定

設定したら「Create App」ボタンをクリックすると、アプリが作成されます。

Dropboxアプリの作成

アクセストークンの取得

「Create App」ボタンをクリックすると画面遷移し、アプリの設定画面が表示されます。ここで「OAuth 2」>「Generated access token」の「Generate」をクリックしてアクセストークンを取得します。

アクセストークンを取得

Fessの設定

一方、Fess側ではプラグインをインストールして、クロール設定を作成します。

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

Fessを起動後、管理画面の「システム」>「プラグイン」で「インストール」をクリックし、プラグインのインストール画面を表示します。リモートタブで「fess-ds-dropbox-13.4.0」を選択し、「インストール」をクリックするとプラグインがインストールされます。

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

クロールの設定

Dropbox内のファイルをクロールする際には、データストアクロールを利用します。

Fessの管理画面を開き、「クローラ」>「データストア」と移動し、新規作成をクリックして必要な項目を設定していきます。

「名前」には任意の設定名を指定します。

「ハンドラ名」は「DropboxDataStore」を選択し、「パラメータ」は以下のように設定します。

access_token=**********

access_tokenは「アクセストークンの取得」で取得したアクセストークンです。

「スクリプト」は以下のように設定します。

url=file.url
title=file.name
content=file.contents
mimetype=file.mimetype
filetype=file.filetype
filename=file.name
content_length=file.size
last_modified=file.client_modified

スクリプトで利用可能なキーと値は以下のとおりです。「file」はDropbox上の1つのファイルに対応します。

キー
file.url ファイルを閲覧するリンク
file.name ファイルの名前
file.contents ファイルの中身
file.mimetype ファイルのMIMEタイプ
file.filetype ファイルの種類
file.size ファイルのサイズ
file.client_modified ファイルの最終編集日時

設定画面は次のような感じになります。

データストアのクロール設定

クローラの実行

「システム」>「スケジューラ」と移動し、「Default Crawler」のジョブを開きます。その画面上の「今すぐ開始」をクリックして、クローラを開始し、ジョブの状態が「実行中」から「有効」になるまで待ちます。

検索のテスト

Fessの検索画面を表示して、検索フォームから適当に検索してみてください。

Fessの検索画面から検索した結果(ここでは「test」を検索)

Dropbox内のファイルが検索できることを確認できます。

Dropbox Paperのクロール

Dropboxには「Dropbox Paper」というドキュメント編集サービスもあり、FessはデータストアクロールでこのPaperも検索対象にすることが可能です。

「ハンドラ」で「DropboxPaperDataStore」を選択し、Dropbox Paperの文書をクロールする設定を作成します。

「パラメータ」の設定内容は、「クロールの設定」で設定した内容と同じです。「スクリプト」は以下のように設定します。

title=paper.title
content=paper.contents
url=paper.url
mimetype=paper.mimetype
filetype=paper.filetype

スクリプトで利用可能なキーと値は以下のとおりです。 この時の「Paper」はDropbox上の1つのドキュメントに対応します。

キー
paper.title Paperのタイトル
paper.contents Paperの中身
paper.url Paperを閲覧するリンク
paper.mimetype PaperのMIMEタイプ
paper.filetype Paperの種類

クロール設定の作成後は、先ほどと同様にクロールして検索してみてください。

* * *

以上、今回はFessのプラグインをインストールすることで、Dropbox内のファイルやDropbox Paperのドキュメントを検索する方法を紹介しました。Dropbox上のデータも検索対象にする際には参考にしてください。

著者紹介

菅谷 信介 (Shinsuke Sugaya)

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

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

一覧はこちら

連載目次

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

【連載】ミッションステートメント ~企業が込めた想い~ [14] 無駄をなくすためにデータ活用を浸透させる、インティメート・マージャー代表の一貫した想い

【連載】ミッションステートメント ~企業が込めた想い~ [14] 無駄をなくすためにデータ活用を浸透させる、インティメート・マージャー代表の一貫した想い

約4.7億件のオーディエンスデータを提供するデータマネジメントプラットフォーム(DMP)専業最大手のインティメート・マージャー。2019年10月には東証マザーズへの上場を果たした。代表取締役社長の簗島亮次氏に、創業時から一貫している強い企業理念の裏にある想いについて聞いた。

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします
注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
ミッションステートメント
教えてカナコさん! これならわかるAI入門
知りたい! カナコさん 皆で話そうAIのコト
対話システムをつくろう! Python超入門
Kubernetes入門
AWSで作るクラウドネイティブアプリケーションの基本
PowerShell Core入門
徹底研究! ハイブリッドクラウド
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

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

一覧はこちら

会員登録(無料)

ページの先頭に戻る