[Webクリッパーテンプレートで](https://help.obsidian.md/web-clipper/templates) は、変数を使用して、ページからテンプレートにデータを自動的に事前入力できます。変数は、 **ノート名** 、 **ノートの場所** 、 **プロパティ** 、 **ノートの内容で使用できます。また、** [フィルター](https://help.obsidian.md/web-clipper/filters) を使用して変数を変更することもできます 。
[Webクリッパー](https://help.obsidian.md/web-clipper)`...`拡張機能のアイコン を使用すると 、テンプレートで使用する現在のページ変数にアクセスできます。使用できる変数には以下の5種類があります。
## プリセット変数
プリセット変数はページコンテンツに基づいて自動的に生成されます。これらは通常、ほとんどのウェブサイトで機能します。
メインコンテンツ変数は で `{{content}}` 、記事の内容、 [ハイライト](https://help.obsidian.md/web-clipper/highlight) 、またはページ上で選択されたテキストがある場合は選択範囲が含まれます。 は `{{content}}` ページのメインコンテンツを抽出しようとしますが、必ずしも目的のコンテンツが抽出されるとは限りません。その場合は、他のプリセット変数やセレクタ変数を使用して必要なコンテンツを抽出できます。
| 変数 | 説明 |
| ----------------- | ---------------------------------------------------------------------------------------- |
| `{{author}}` | ページの著者 |
| `{{content}}` | 記事の内容、 [ハイライト](https://help.obsidian.md/web-clipper/highlight) 、または選択範囲をMarkdown形式で保存します |
| `{{contentHtml}}` | 記事の内容、 [ハイライト](https://help.obsidian.md/web-clipper/highlight) 、または選択範囲(HTML形式) |
| `{{date}}` | 現在の日付。 `date` フィルターを使用してフォーマットできます。 |
| `{{description}}` | 説明または抜粋 |
| `{{domain}}` | ドメイン |
| `{{favicon}}` | ファビコンURL |
| `{{fullHtml}}` | ページ全体のコンテンツの未処理のHTML |
| `{{highlights}}` | テキストとタイムスタンプ付きの [ハイライト](https://help.obsidian.md/web-clipper/highlight) |
| `{{image}}` | ソーシャルシェア画像URL |
| `{{published}}` | 公開日。 `date` フィルターを使用してフォーマットできます。 |
| `{{site}}` | サイト名または発行者 |
| `{{title}}` | ページのタイトル |
| `{{time}}` | 現在の日付と時刻 |
| `{{url}}` | 現在のURL |
| `{{words}}` | 単語数 |
## プロンプト変数
プロンプト変数は言語モデルを活用し、自然言語でデータを抽出および変更します。プロンプト変数を使用するには、 [インタープリター](https://help.obsidian.md/web-clipper/interpreter) を有効化して設定する必要があります。
プロンプト変数は という構文を使用します。プロンプトを囲む二重引用符は重要であり、プロンプトとプリセット変数を区別するために用いられます。プロンプトへの応答は 、例えば という [フィルター](https://help.obsidian.md/web-clipper/filters) `This page describes the different types of variables available in Obsidian Web Clipper templates: Preset, Prompt, Meta, Selector, and Schema.org. It explains how each variable type extracts data from a web page and provides examples and use cases for each, including combining them with filters.` を使って後処理することができます 。 `> This page describes the different types of variables available in Obsidian Web Clipper templates: Preset, Prompt, Meta, Selector, and Schema.org. It explains how each variable type extracts data from a web page and provides examples and use cases for each, including combining them with filters.`
### プロンプト変数を使用する場合
プロンプト変数には、非常に柔軟で簡単に記述できるという利点がありますが、いくつかのトレードオフがあります。実行速度が遅くなり、選択した [プロバイダー](https://help.obsidian.md/web-clipper/interpreter#Models) によってはコストとプライバシーに関する考慮事項が生じる可能性があります。
他の変数タイプとは異なり、プロンプト変数は外部言語モデルによって処理される必要があるため、 [インタープリター](https://help.obsidian.md/web-clipper/interpreter) が実行された後にのみ置き換えられます。
抽出するデータが、他の変数タイプで抽出できる一貫した形式である場合は、プロンプト変数を使用し *ないこと* をお勧めします。
一方、プロンプト変数は、抽出したいデータの形式がウェブサイト間で *統一されていない* 場合に役立ちます。例えば、 書籍サイトに依存しない書籍保存 [テンプレート](https://help.obsidian.md/web-clipper/templates) `This is given as an example of a **Prompt variable** query (`{{author of the book}}`) that leverages a language model to extract data like a book's author, which may not be consistently formatted across different websites.` を作成できます。プロンプト変数はどの書籍サイトでも機能しますが、セレクター変数は通常、1つのサイトでしか機能しません。
### 例
プロンプトは、ほぼあらゆる自然言語クエリを使用できます。使用するモデルに応じて、プロンプトは複数の言語間でデータのクエリや翻訳を行うことができます。
- `This is presented as an example of a **Prompt variable** query (`{{\\"a three bullet point summary, translated to French\` ページに関する箇条書きを抽出し、フランス語に翻訳します。
- `This is provided as another example of a **Prompt variable** query (`{{\\"un resumé de la page en trois points\` フランス語のプロンプトを使用して 3 つの箇条書きを抽出します。
[プロンプトは、ページコンテンツをフィルター](https://help.obsidian.md/web-clipper/filters) で操作できるJSONに変換できます 。例:
```
— [[@]], [[]]
```
## メタ変数
- `{{meta:name}}` 指定された名前のメタ名タグの内容を返します (例:メタ タグ `{{meta:name:description}}` の場合 `description`)。
- `{{meta:property}}` 指定されたプロパティを持つメタプロパティタグの内容を返します (例:メタタグ `{{meta:property:og:title}}` の場合)。 `og:title`
## セレクタ変数
[セレクター変数を使用すると、 CSS セレクター](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_selectors/Selectors_and_combinators) を使用してページ上の要素からテキスト コンテンツを抽出できます 。
構文は です `{{selector:cssSelector?attribute}}` 。`?attribute` はオプションです。属性が指定されていない場合は、要素のテキストコンテンツが返されます。 を使用して、 `{{selectorHtml:cssSelector}}` 要素のHTMLコンテンツを取得することもできます。セレクター変数は、特定のウェブサイト、または一貫したHTML構造を持つ複数のウェブサイトで最も効果的に機能します。
- `{{selector:h1}}` `h1` ページ上の 任意の要素のテキスト コンテンツを返します。
- `{{selector:.author}}``.author` ページ上の 任意の要素のテキスト コンテンツを返します。
- `{{selector:img.hero?src}}` `src` クラス のイメージの属性 を返します `hero` 。
- `{{selector:a.main-link?href}}` `href` クラス のアンカー タグの属性 を返します `main-link` 。
- `{{selectorHtml:body|markdown}}` [フィルター](https://help.obsidian.md/web-clipper/filters#HTML%20processing) `body` を使用して Markdown に変換された要素 の HTML 全体を返します 。 `markdown`
- より具体的な指定が必要な場合は、ネストされた CSS セレクタとコンビネータがサポートされます。
- 複数の要素がセレクターに一致する場合は配列が返され、 や など の [配列フィルターとオブジェクト フィルター](https://help.obsidian.md/web-clipper/filters#Arrays%20and%20objects) を使用して処理できます。 `join` `map`
## Schema.org変数
スキーマ変数を使用すると、ページ上の [schema.org](https://schema.org/) JSON-LDからデータを抽出できます。schema.orgデータは [、テンプレートを自動的にトリガーする](https://help.obsidian.md/web-clipper/templates#Schema.org%20matching) ためにも使用できます。
- `{{schema:@Type:key}}` スキーマからキーの値を返します。
- `{{schema:@Type:parent.child}}` ネストされたプロパティの値を返します。
- `{{schema:@Type:arrayKey}}` 配列の最初の項目を返します。
- `{{schema:@Type:arrayKey[index].property}}` 配列内の指定されたインデックスにある項目を返します。
- `{{schema:@Type:arrayKey[*].property}}` 配列内のすべての項目から特定のプロパティを返します。
スキーマ タイプを指定せずに省略表記を使用することもできます。
- `{{schema:author}}` 任意のスキーマ タイプで見つかった最初の `author` プロパティと一致します。
- `{{schema:name}}` 任意のスキーマ タイプで見つかった最初の `name` プロパティと一致します。
このショートカットは、特定のスキーマ タイプがわからない、または気にしないが、探しているプロパティ名はわかっている場合に特に便利です。
ネストされたプロパティと配列アクセスは、スキーマの指定の有無にかかわらず機能します `@Type` 。
- `{{schema:author.name}}` 最初の `author` プロパティを見つけて、その `name` サブプロパティにアクセスします。
- `{{schema:author[0].name}}` `name` 著者の配列の最初の著者の に アクセスします。
- `{{schema:author[*].name}}` すべての著者名の配列を返します。