1. インデックスの設定

PDF用の構成

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore Search PDFを インデックス化 し、検索結果に表示させることができます。ソースをインデックスHTMLまたはJSONコンテンツに設定するのと同様に、PDFコンテンツをインデックスすると、各PDFは タイトル説明URLなどの属性を持つインデックスドキュメントになります。

Sitecore Searchドキュメント抽出器 はHTMLまたはJSONしか解析できません。PDFコンテンツから属性値を効果的に抽出するには、PDFのHTML構造を理解する必要があります。

ブラウザのHTMLページとは異なり、PDFのソースを直接確認・閲覧することはできません。しかし、PDFのHTML構造を表示するために一時的なSearchソースを設定することは可能です。このソースが 一時 的と呼ばれているのは、PDFのHTML構造を表示する唯一の目的だからです。このソースのインデックス文書を使って検索体験を作成するわけではありません。

!重要PDFのHTML構造を見るには、外部ツールではなくSearchソースを使いましょう。外部コンバーターは構文のバリエーションを持つHTMLを生成し、予期せぬ属性値の生成につながることがあります。

PDFのHTML構造を理解したら、PDFコンテンツのインデックス作成を 設定 できます。

!注PDFコンテンツのインデックスには高度なウェブクローラーソースの使用を推奨します。なぜなら、通常はJavaScriptドキュメントエクストラクタが提供する論理的なパワーが必要になるからです。

ドキュメント抽出器とインデックス作成PDFについて

HTMLコンテンツをインデックスするのと同様に、PDFコンテンツの抽出にはあらゆる種類のドキュメントエクストラクターを使うことができます。しかし、PDFには通常JavaScriptのドキュメントエクストラ クターを使います。なぜなら、テキストのサニティ化や条件の適用など複雑なユースケースをサポートするからです。

PDFコンテンツ用にドキュメントエクストラクターを設定する際は、以下の点を念頭に置いてください。

  • 定義した抽出ルールがPDFにのみ適用され、HTMLなどの他のコンテンツには適用されないようにするために、URLをMatchに設定してください。これにより、クローラーは定義されたパターンに合致するURLにのみルールを適用します。

    通常、GLOB式 **/*.pdfは再帰的に探索するため十分です。

  • すべてのPDFがそのようにマークされるようにするために、type属性をpdfの固定値に設定することをお勧めします。

  • タイトル説明URLparent_urlなどの他の属性を抽出するには、一時的なソースから抽出したPDFのHTML構造を使いましょう。

そのために、いくつかのサンプル 文書抽出器を作成しました。

PDFインデックス作成のためのクローラー設定

クローラーの設定 は、クローラーの範囲と動作を定義します。クローラー設定では、URLからどれだけのリンクをたどるか、URLを避けるか、各URLに渡すべきヘッダー情報などを定義します。

PDF文書をインデックスする際は、少なくとも以下の設定を確認することをお勧めします。

  • Max Depth - ハイパーリンクをたどってPDF URLを見つけたい場合は、最大深度少なくとも1であることを確認しましょう。 最大深度0の場合、クローラーはPDF URLを含むいかなるハイパーリンクも追跡しません。

    !注トリガーがPDF URLを含むサイトマップやサイトマップインデックスであれば、デフォルトのMAX DEPTHデフォルトの0のままにしてください。

  • Allowed Domains - 許可ドメインを指定し、PDFがHTMLページとは異なるドメインでホストされている場合、PDFを含むドメインを追加してください。例えば、HTMLページが*www.bank.comでPDFがwwwbank.hostingservice.netにある場合、許可ドメインとして追加 wwwbank.hostingservice.net*。

Requestエクストラクターとインデックス作成PDFについて

通常、トリガーは クローラーの出発点を提供します。しかし、トリガーがPDFをカバーしない場合は、追加のリクエストを作成するために リクエストエクストラクター を使う必要があります。

!注リクエストエクストラクターが動作するように、MAX DEPTHを少なくとも1に設定してください。

例えば、トリガーがすべてのHTMLおよびPDF URLを含むSitemapであれば、リクエストエクストラクターの設定は不要です。しかし、トリガーがHTMLページのみのSitemapで、これらのHTMLページ内にPDF個のURLが隠されている場合は、クローラー用のPDF URLを生成するリクエストエクストラクターを作成してください。

以下は、ページ内のPDF URLのみを取得するためのJavaScriptリクエストエクストラクターのサンプルです:

function extract(request, response) { const $ = response.body; const regex = /.*\.pdf(?:\?.*)?$/; return $('a') .toArray() .map((a) => $(a).attr('href')) .filter((url) => regex.test(url)) .map((url) => ({ url })); }

Attributes PDFのインデックス作成に特化しています

Sitecore Search PDFのインデックス作成に追加の属性は必要ありません。しかし、検索結果の整理や提示の仕方を改善するカスタム属性を作成することは可能です。

例えば、PDFが属する親ページを追跡したい場合は、オプションでparent_urlというタイプの文字列の属性を作成・公開できます。その後、ドキュメントエクストラクタを設定してこの属性の値を抽出する必要があります。

parent_url属性は、PDF URLがホストされているページのURLと異なる見た目の場合に有用です。例えば、ページ*https://www.bank.com/legal/* には*https://wwwbank.hostingservice.net/february-2023--global.pdf?md=20230215T151008Z* .のようなURLのPDFが含まれており、これは別のドメインに属しています。

parent_url属性には以下の設定をご利用ください:

  • エンティティ - Content、またはあなたが望む他のエンティティ。
  • 表示名 - Parent URL、または類似の名称。
  • Attribute 名前 - parent_url、またはそれに似た名前。
  • 配置 - Standard
  • データ型 - String
この記事を改善するための提案がある場合は、 お知らせください!