PDFの構成

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

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

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

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

ブラウザーのHTMLページとは異なり、PDFのソースを直接検査したり表示したりすることはできません。ただし、PDFのHTML構造を表示するように一時的なSearchソースを設定することはできます。このソースは、PDFのHTML構造を表示できるようにすることが唯一の目的であるため、temporaryと呼ばれます。このソースのインデックス ドキュメントを使用して検索エクスペリエンスを作成することはありません。

大事な

PDFのHTML構造を表示するには、外部ツールではなくSearchソースを使用します。外部コンバーターは、構文のバリエーションを含むHTMLを提供する場合があり、予期しない属性値が発生する可能性があります。

PDFのHTML構造を理解したら、PDFコンテンツにインデックスを付けるように ソースを構成 できますPDFコンテンツ。

メモ

通常、JavaScriptドキュメント抽出ツールが提供する論理能力が必要になるため、高度なWebクローラー ソースを使用してPDFコンテンツのインデックスを作成することをお勧めします。

ドキュメント抽出ツールとPDFのインデックス作成

HTMLコンテンツにインデックスを付ける場合と同様に、任意のタイプのドキュメント抽出ツールを使用してPDFコンテンツを抽出できます。ただし、テキストのサニタイズや条件の適用などの複雑なユースケースをサポートできるため、通常、PDFにはJavaScriptドキュメント抽出ツール を使用します。

PDFコンテンツ用にドキュメント抽出器を設定する場合は、次の点に留意してください。

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

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

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

  • titledescriptionURLparent_urlなどの他の属性を抽出するには、一時ソースから抽出したPDFのHTML構造を使用します。

役立つように、いくつかのサンプル ドキュメント抽出ツールを作成しました。

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

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

PDFドキュメントにインデックスを付ける場合は、少なくとも次の設定を確認することをお勧めします。

  • Max Depth - クローラーがハイパーリンクをたどってPDF URLを検索できるようにする場合は、MAX DEPTHが少なくとも1であることを確認してください。 MAX DEPTH0の場合、クローラーは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 URLとPDF URLを持つSitemapである場合は、要求抽出器を構成する必要はありません。ただし、トリガーがHTMLページのみのSitemapであり、これらのHTMLページ内にURLが隠されているPDF場合は、要求抽出器を作成してクローラーの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 }));
}

PDFのインデックス作成に固有のAttributes

Sitecore Searchでは、PDFのインデックスを作成するために追加の属性は必要ありません。ただし、検索結果の整理と表示方法を改善するカスタム属性を作成することはできます。

例えば、PDFが属する親ページを追跡する場合は、オプションでstringタイプの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属性には、次の設定を使用します。

  • Entity - Content、または必要なその他のエンティティ。

  • Display Name - Parent URL、または同様のもの。

  • Attribute Name - parent_url、または同様のもの。

  • Placement - Standard

  • Data Type - String

この記事を改善するための提案がある場合は、 お知らせください!