feat: add obsidian-clipper-template-creator for creating Obsidian Web Clipper templates
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
# Analysis Workflow: Validating Variables
|
||||
|
||||
To ensure your template works correctly, you must validate that the target page actually contains the data you want to extract.
|
||||
|
||||
## 1. Fetch the Page
|
||||
Use the `WebFetch` tool to retrieve the content of a representative URL provided by the user.
|
||||
|
||||
```
|
||||
WebFetch(url="https://example.com/recipe/chocolate-cake")
|
||||
```
|
||||
|
||||
## 2. Analyze the Output
|
||||
|
||||
### Check for Schema.org (Recommended)
|
||||
Look for `<script type="application/ld+json">`. This contains structured data which is the most reliable way to extract info.
|
||||
|
||||
**Example Found in HTML:**
|
||||
```html
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org/",
|
||||
"@type": "Recipe",
|
||||
"name": "Chocolate Cake",
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": "John Doe"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Conclusion:**
|
||||
* `{{schema:Recipe:name}}` is valid.
|
||||
* `{{schema:Recipe:author.name}}` is valid.
|
||||
* **Tip:** You can use `schema:Recipe` in the `triggers` array to automatically select this template for any page with this schema.
|
||||
|
||||
### Check for Meta Tags
|
||||
Look for `<meta>` tags in the `<head>` section.
|
||||
|
||||
**Example Found in HTML:**
|
||||
```html
|
||||
<meta property="og:title" content="The Best Chocolate Cake" />
|
||||
<meta name="description" content="A rich, moist chocolate cake recipe." />
|
||||
```
|
||||
|
||||
**Conclusion:**
|
||||
* `{{meta:og:title}}` is valid.
|
||||
* `{{meta:description}}` is valid.
|
||||
|
||||
### Check for CSS Selectors (Fallback)
|
||||
If Schema and Meta tags are missing, look for HTML structure (classes and IDs) to use with `{{selector:...}}`.
|
||||
|
||||
**Example Found in HTML:**
|
||||
```html
|
||||
<div class="article-body">
|
||||
<h1 id="main-title">Chocolate Cake</h1>
|
||||
<span class="author-name">By John Doe</span>
|
||||
</div>
|
||||
```
|
||||
|
||||
**Conclusion:**
|
||||
* `{{selector:h1#main-title}}` or `{{selector:h1}}` can extract the title.
|
||||
* `{{selector:.author-name}}` can extract the author.
|
||||
|
||||
## 3. Verify Against Base
|
||||
Compare the available data from your analysis with the properties required by the user's Base (see `references/bases-workflow.md`).
|
||||
|
||||
* If the Base requires `ingredients` but the page has no Schema or clear list structure, warn the user that this field might need manual entry or a prompt variable.
|
||||
Reference in New Issue
Block a user