マイクロデータとは何ですか?
Scrapeless Universal Scraping APIは、JavaScriptでレンダリングされた可視コンテンツを含む、構造化データ抽出ワークフローのためのウェブページを取得します。
TL;DR
- マイクロデータは、既存のHTMLに機械可読の意味を注釈します。 それは、構造化データを別の文書に保持するのではなく、通常の要素に属性を追加します。
- Microdataアイテムには型と名前付きプロパティがあります。 コア属性は、スコープ、語彙、アイデンティティ、プロパティ名、および非子孫要素への参照を定義します。
- Schema.org と Microdata は異なる層です。 Schema.orgは語彙を提供し、Microdataはその語彙をHTMLに付加するための構文を提供します。
- マイクロデータは有用ですが、ページのマークアップに密接に結びついています。 テンプレートの変更は、見た目のページが正しいように見えても、注釈や抽出ルールを壊す可能性があります。
- JSON-LDは、検索マークアップのための維持がしやすいことがよくあります。 マイクロデータは有効のままであり、意味が可視要素に付随したままであるべき場合には、より適した選択肢となります。
マイクロデータはHTMLに組み込まれた構造化データの構文です。これにより、パブリッシャーはページに記載されたもの—製品、イベント、人、レシピ、記事など—を特定し、そのものに属するプロパティにラベルを付けることができます。ブラウザは同じ見出し、リンク、画像、テキストをレンダリングします。追加の属性は、パーサー、クローラー、検索システム、アクセシビリティツール、データ抽出ソフトウェアのための追加の機械可読レイヤーを作成します。
申し訳ありませんが、テキストが指定されていません。翻訳したい内容を提供してください。 HTML標準のWHATWGマイクロデータセクション 処理モデルを定義します。その標準の文脈が重要なのは、Microdataが視覚的なウィジェットや検索エンジンのプラグインではないからです。これはドキュメント自体の一部であり、その意味はアイテムのスコープ、プロパティ値、URL、およびネストされたアイテムに関するルールに従います。
エンティティを表すマイクロデータ
マイクロデータは、エンティティをゼロまたは複数のプロパティを持つアイテムとして表現します。アイテムは、以下を持つHTML要素で始まります。 itemscope 属性。オプションの itemtype 属性は、アイテムが表すエンティティの種類を定義する1つ以上の語彙URLを供給します。子要素は持つ itemprop そのアイテムに名前付きの値を追加します。
値は必ずしも見えるテキストから来るわけではありません。リンクはそのURLを提供し、画像はそのソースURLを提供し、時間要素は機械可読な日時値を提供し、メタ要素は通常の文章として表示される必要のない値を持つことができます。したがって、パーサーはタグを削除して残ったテキストを読み取るのではなく、Microdataの値のルールに従います。
シンプルなネスティングでは表現できない関係をカバーする2つの追加属性があります。 itemid 語彙がサポートしている場合、型付きアイテムにグローバル識別子を付与します。 itemref ポイントは、アイテムに含めるべきプロパティを持つ、同じドキュメント内の他の要素を指します。これらの機能はリアルテンプレートで役立ちますが、抽出器は孤立したものをスキャンするのではなく、完全なモデルを実装しなければならないことも意味します。 itemprop 文字列。
マイクロデータ属性の概要
| 属性 | 役割 | 一般的なミス |
|---|---|---|
| itemscope | 新しいアイテムを作成します。 | 明確な所有アイテムなしにプロパティを追加する。 |
| アイテムタイプ | アイテムを語彙タイプにリンクします。 | 絶対的な語彙のURLが期待される場所でラベルを使用しています。 |
| itemprop | 現在のアイテムのプロパティを名前付けします。 | ルール: 1. 出力は翻訳されたテキストのみ — 説明や余分なコードフェンスはなし。 2. Markdown/HTML構造 (見出し、リスト、リンク、テーブル) を正確に保持。 3. プレースホルダートークン @@CODEBLOCK_0@@ や @@INLINECODE_0@@ はそのまま保持; 翻訳、並べ替え、統合、または再フォーマットしてはいけない。 4. ``` コードフェンスを追加したり削除したりせず、通常のテキストをコードブロックに囲んではいけない。 |
| itemid | 許可されている場合、グローバルに型付けされたアイテムを特定します。 | 任意のデータベースキーとして扱う。 |
| itemref | 参照された要素からのプロパティを含みます。 | 参照ノードを無視して抽出します。 |
Schema.orgがどこに適合するか
Schema.orgは共有語彙であり、Microdataはシリアライズ構文です。 Schema.orgの入門資料 製品やイベントなどの文書タイプと、名前、画像、startDateなどのプロパティを提供します。発行者は、Microdata、RDFa、またはJSON-LDを使用して、同じ用語の多くを表現できます。構文を変更しても語彙や意図するエンティティモデルは自動的には変わりません。
この区別は一般的な計画の誤りを防ぎます。チームは「Schemaを使用している」と言うかもしれませんが、実際の質問は別々です: どの語彙タイプがビジネスエンティティを正しく説明していますか? どのフォーマットがレンダリングスタックに適していますか? どの消費者が選択した組み合わせをサポートしていますか? 特定の検索機能に適用される検証ルールは何ですか? それらの質問を独立して回答することで、クリーンなマークアップとより信頼性の高い抽出が得られます。
パーサーはどのようにMicrodataを抽出するか
準拠した抽出器は最上位のアイテムから始まり、各アイテムのタイプと識別子を決定し、子孫および参照されたノードからプロパティ値を解決します。ネストされたアイテムは関連のないテキストにフラット化されるのではなく、構造化された値として残ります。URL値のプロパティは文書のベースURLに対して解決されるため、最終的な値はソースHTMLに見つかるリテラル属性とは異なる場合があります。
生成抽出にはもう一つの質問があります: どの文書が解析されるべきですか? サーバーHTMLにはすでにMicrodataが含まれている場合があり、クライアントアプリケーションがJavaScriptを実行した後に属性を追加することがあります。生のHTTPレスポンスとレンダリングされたDOMは、したがって異なる構造化データを暴露することができます。取得段階は出力と共に記録されるべきであり、下流のユーザーはデータセットがソースHTMLを反映しているのか、ブラウザがレンダリングした状態を反映しているのかを知ることができます。
Microdata、JSON-LD、そしてRDFa
MicrodataはプロパティをHTML要素に直接配置します。JSON-LDは通常、スクリプトブロック内にJSONオブジェクトを保持し、可視コンテンツから分離されます。RDFaもマークアップを注釈しますが、RDFデータモデルから来ており、典型的なSchema.org発行ワークフローを超えたリンクデータパターンをサポートしています。3つすべてが構造化データを表現できますが、異なるメンテナンスと抽出のトレードオフを生み出します。
Google Search Centralの構造化データガイダンス は、サイトのセットアップがサポートされている場合、JSON-LDを推奨します。なぜなら、プレゼンテーションからの分離がネストされたデータのメンテナンスを容易にするからです。その推奨はMicrodataを無効にしません。テンプレートがすでに各セマンティックプロパティを可視要素にバインドしており、組織がその要素に合わせて注釈を移動させたい場合、Microdataは合理的です。
| 質問 | Microdata | JSON-LD | RDFa |
|---|---|---|---|
| 値が存在する場所 | HTML要素上 | JSON-LDブロック内 | HTML要素上 |
| プレゼンテーションの結合 | 高 | 低 | 高 |
| 典型的な強度 | 可視コンテンツの整合 | テンプレートのメンテナンス | リンクデータ表現 |
| 抽出の必要性 | HTMLを意識したアイテム解析 | JSON解析とグラフ処理 | RDFa意識のある解析 |
一般的なMicrodataの失敗モード
壊れたスコープは最も基本的な失敗です。プロパティは関連するアイテムを所有する要素の外側に配置でき、パーサーが他の場所に接続したり無視したりする原因となります。ネストされたエンティティも誤ってモデル化されることがあります: アドレスはしばしば自分自身のプロパティを持つアイテムであるべきであり、近くにある任意のテキストから組み立てられた文字列ではありません。
語彙の漂流は、より微妙な欠陥を生み出します。プロパティ名は一つのタイプには有効ですが別のタイプには無効かもしれません。また、検索機能は一般的な語彙がオプショナルと見なすフィールドを要求する場合があります。したがって、検証は2つのレベルで行われるべきです: 構文とデータモデルの正しさ、その後に消費者特有の適格チェックが行われます。1つのテストに合格しても、豊かな結果や特定のプレゼンテーションが保証されるわけではありません。
重複した真実は別のリスクです。サイトはMicrodataとJSON-LDを並べて持ち、それぞれ異なる価格、日付、または正規のURLを公開することがあります。抽出器は出所を保持し、権威ある表現を選択するか、対立を報告するべきです。出版者は、すべての構造化フォーマットを1つのデータソースから生成するべきであり、独立して編集するべきではありません。
検索外観を超えた実用的な使用法
エンティティ抽出
クローラーは、製品、イベント、組織、または記事のプロパティを型付きレコードにマッピングでき、周囲の文章からすべてのフィールドを推測する必要はありません。
品質保証
モニタリングジョブは、可視値と機械可読値を比較し、古い価格、欠落した識別子、または無効なネストをフラグできます。
コンテンツ移行
移行パイプラインは、用語のマッピングがレビューされている限り、コンテンツシステム間でページを移動させる際にエンティティメタデータを保持できます。
データセットの強化
Microdataは、テキスト抽出を補完する明示的な名前、日付、および関係を提供できるが、値は依然として検証が必要です。
Microdataを選択し維持する方法
セマンティックアノテーションが安定したサーバー生成要素に自然に属し、開発チームがマークアップをテンプレートの一部としてテストすることに慣れている場合は、Microdataを選択します。エンティティグラフが複雑で、いくつかの表示要素が1つのレコードに寄与する場合、またはコンテンツとプレゼンテーションが異なるスケジュールで変化する場合は、JSON-LDを優先します。リンクデータ要件がそのグラフモデルにより適している場合は、RDFaを優先します。
メンテナンスにはテンプレートレベルのテスト、代表的なレンダリングページ、語彙の検証、消費者固有のチェックを含めるべきです。ページのURL、キャプチャメソッド、抽出タイムスタンプ、アイテムタイプ、生のプロパティ値、正規化された値、および検証結果を追跡します。これらのフィールドにより、再デザインによって属性が移動したり、クライアントスクリプトが挿入を遅延させたりした場合の変更が説明可能になります。
ウェブスケールコレクションの場合、取得と解析は別々であるべきです。 Scrapeless Universal Scraping API は抽出段階にページコンテンツを供給し、パーサーがMicrodataルールを適用し、その結果を安定したダウンストリームスキーマにマッピングします。レビュー Scrapelessの価格 は計画されたページボリュームの取得コストを見積もる際に確認してください。
結論
MicrodataはHTMLネイティブの構造化データです:アイテムはエンティティを定義し、プロパティは値を定義し、語彙は共有された意味を提供します。セマンティックアノテーションが安定した表示要素に整合している場合、うまく機能します。信頼できる使用は、完全なアイテムモデルを解析し、正しいページ表現をキャプチャし、語彙ルールを検証し、複数の構造化フォーマットが共存する際に起源を追跡することに依存します。
構造化データワークフローを構築する準備は整いましたか?
Scrapelessを使用して公開ウェブページを取得し、その後Microdataをあなたのパイプラインが信頼できるレコードに検証してマッピングします。
無料で始める →FAQ
MicrodataはSchema.orgと同じですか?
いいえ。Microdataはアイテムとプロパティを表現するためのHTML構文であり、Schema.orgは一般に使用される多くのタイプとプロパティ名を定義する語彙です。Schema.orgの用語はJSON-LDまたはRDFaでも表現できます。
Microdataは検索ランキングを改善しますか?
Microdataはサポートされた消費者が適格な構造化情報を理解するのに役立ちますが、それを追加してもランキングの向上や特定の検索機能を保証するものではありません。表示されるページ、コンテンツの品質、技術的適格性、および消費者ポリシーは引き続き適用されます。
ページはMicrodataとJSON-LDの両方を使用できますか?
はい、ページは両方のフォーマットを含むことができますが、重複したエンティティは一致する必要があります。矛盾する価格、日付、識別子、または正式なURLは、検証者と抽出パイプラインの両方に曖昧さを生じさせます。
抽出器はソースHTMLまたはレンダリングされたDOMを読むべきですか?
抽出器は権威のあるマークアップを含む表現を読むべきです。Microdataがサーバー生成されている場合、ソースHTMLは高速です。JavaScriptが属性を追加または変更する場合、レンダリングされたDOMが必要です。
Microdataデータセットは何を保持すべきですか?
有用なデータセットはページのURL、キャプチャメソッド、アイテムタイプ、アイテム識別子が存在する場合はそれを、生のプロパティ値、正規化された値、および検証結果を保持すべきです。起源は後の修正や監査を可能にします。