Modèles Obsidian Web Clipper : 6 exemples prêts à l'emploi

L’Obsidian Web Clipper officiel est gratuit, open source, et enregistre directement dans votre coffre. Sa vraie force, ce sont les modèles (templates) : un par type de page, choisi automatiquement par un trigger, et chacun décide du nom de la note, du dossier, des propriétés et du contenu.

Le problème, c’est qu’un éditeur de modèle vide ne vous apprend rien. Cet article rassemble six modèles à coller dès aujourd’hui, dont la syntaxe a été vérifiée dans la documentation officielle et dans le code source du clipper. Suit une section sur les triggers, les variables et les filtres, pour que vous puissiez écrire les vôtres.

Comment un modèle est construit

Chaque modèle comporte les mêmes éléments :

  • Nom de la note et emplacement de la note (par exemple Clippings/Videos)
  • Propriétés, qui deviennent le frontmatter YAML
  • Contenu de la note, le corps en Markdown
  • Triggers, les motifs d’URL ou les types schema.org qui sélectionnent le modèle automatiquement

Ces quatre champs acceptent des variables comme {{title}} ou {{url}}, et chaque variable peut passer par des filtres, comme {{published|date:"YYYY-MM-DD"}}. Pour voir ce qu’une page expose, ouvrez le clipper et cliquez sur l’icône ... : elle liste les variables de la page en cours.

Les modèles se partagent sous forme de fichiers .json. Pour en importer un, ouvrez les réglages du clipper, allez sur n’importe quel modèle et cliquez sur Import (ou glissez-y le fichier). Le dépôt clipper-templates de Kepano sur GitHub propose une douzaine d’autres exemples au même format.

1. Vidéo YouTube avec transcription

Voici le JSON complet, prêt à importer, pour que vous voyiez le format une fois. Enregistrez-le sous youtube.json et importez-le.

{
  "schemaVersion": "0.1.0",
  "name": "YouTube",
  "behavior": "create",
  "noteNameFormat": "{{title|safe_name}}",
  "path": "Clippings/Videos",
  "noteContentFormat": "![{{title}}]({{url}})\n\n{% if transcript %}## Transcript\n\n{{transcript}}{% else %}No transcript available.{% endif %}",
  "properties": [
    { "name": "title", "value": "{{schema:name}}", "type": "text" },
    { "name": "channel", "value": "{{schema:author|wikilink}}", "type": "multitext" },
    { "name": "published", "value": "{{schema:uploadDate|date:YYYY-MM-DD}}", "type": "date" },
    { "name": "duration", "value": "{{schema:duration|duration}}", "type": "text" },
    { "name": "source", "value": "{{url}}", "type": "text" },
    { "name": "tags", "value": "videos", "type": "multitext" }
  ],
  "triggers": ["https://www.youtube.com/watch?v="]
}

Deux détails à connaître. La ligne ![...]({{url}}) intègre le lecteur dans votre note. Et {{transcript}} ne figure pas dans le tableau des variables de la documentation : elle vient de l’extracteur YouTube de Defuddle, le parseur intégré au clipper, et n’existe que si la vidéo a des sous-titres. C’est pour ça que le modèle l’enveloppe dans un {% if %}. Si vous préférez garder un résumé plutôt que 10 000 mots de sous-titres, activez Interpreter et remplacez-la par une variable de prompt comme {{"a five bullet summary of the video"}}.

2. Thread X (Twitter)

Les versions récentes du clipper reconnaissent les posts X et placent le thread dans {{content}} : le modèle sert donc surtout à nommer la note et à définir le trigger.

Trigger (une regex, pour qu’il ne se déclenche que sur les posts, pas sur votre fil) :

/^https:\/\/(x|twitter)\.com\/[^\/]+\/status\/\d+/

Contenu de la note :

{{content}}

Source: [{{author}}]({{url}})

Propriétés utiles : author = {{author|wikilink}}, source = {{url}}, created = {{date|date:"YYYY-MM-DD"}}, tags = threads.

3. Recette

Les sites de recettes publient des données schema.org, ce qui en fait le modèle le plus propre de la série : aucun sélecteur CSS, et il marche sur presque tous les sites de cuisine.

Trigger :

schema:@Recipe

Contenu de la note :

![{{title}}]({{image}})

{{description}}

## Ingredients

{{schema:@Recipe:recipeIngredient|list:task}}

## Steps

{{schema:@Recipe:recipeInstructions[*].text|list:numbered}}

Propriétés : cuisine = {{schema:@Recipe:recipeCuisine}}, total_time = {{schema:@Recipe:totalTime|duration}}, source = {{url}}. Les ingrédients deviennent une liste de cases à cocher au fil de la préparation. Certains sites regroupent les étapes en sections ; dans ce cas, recipeInstructions[*].text peut revenir vide et il faudra ajuster le chemin.

4. Conversation ChatGPT ou Claude

Le parseur du clipper a des extracteurs pour chatgpt.com et claude.ai, donc dans les versions récentes {{content}} contient les échanges de la conversation. Les anciens tutos utilisent une longue chaîne selectorHtml pour ChatGPT ; vous ne devriez plus en avoir besoin.

Triggers (un par ligne) :

https://chatgpt.com/c/
https://chatgpt.com/share/
https://claude.ai/chat/

Contenu de la note :

{{content}}

Propriétés : title = {{title}}, source = {{url}}, created = {{date|date:"YYYY-MM-DD"}}, tags = ai/conversation. Pour aller plus loin sur la portabilité de vos chats : enregistrer ses conversations ChatGPT en Markdown.

5. Article Wikipédia

L’extraction générique de Wikipédia garde les boîtes de navigation et les pieds de page. Ce modèle cible directement le corps de l’article et retire le bruit.

Trigger :

/^https:\/\/[a-z-.]+\.wikipedia\.org\/wiki\/.*$/

Contenu de la note :

{{selectorHtml:#mw-content-text|remove_html:(".navbox,.printfooter,.side-box,.mw-editsection")|markdown}}

Propriétés : title = {{title}}, author = [[Wikipedia]], source = {{url}}, tags = wikipedia. Pour les billets de blog et les articles de presse classiques, un simple modèle {{content}} placé en haut de votre liste sert de solution par défaut.

6. Article scientifique (arXiv)

Les pages de résumé d’arXiv exposent des balises meta citation_*, qui fournissent des métadonnées propres sans rien deviner.

Trigger :

https://arxiv.org/abs/

Contenu de la note :

## Abstract

{{selector:blockquote.abstract|replace:"Abstract\:":""|trim}}

## Key contributions

{{"three key contributions of this paper, as a bullet list"}}

Propriétés : title = {{meta:name:citation_title}}, authors = {{selector:.authors a|wikilink|join}}, published = {{meta:name:citation_date|date:("YYYY-MM-DD", "YYYY/MM/DD")}}, pdf = {{meta:name:citation_pdf_url}}. La ligne « key contributions » est une variable de prompt : elle nécessite Interpreter activé avec un modèle (une clé API ou un modèle local via Ollama). Supprimez-la si vous n’utilisez pas Interpreter.

Les triggers de modèle, expliqués

Il existe trois sortes de triggers, une règle par ligne :

TypeExempleCorrespond à
Simplehttps://www.youtube.com/watch?v=Toute URL qui commence par ce texte
Regex/^https:\/\/arxiv\.org\/abs\//Les URL qui correspondent au motif (échappez . et /)
Schemaschema:@RecipeLes pages dont le type schema.org est Recipe

Les triggers schema peuvent aussi tester un champ (schema:@Recipe.name) ou une valeur (schema:@Recipe.name=Cookie).

L’ordre compte : le premier modèle de votre liste qui correspond l’emporte, et une page qui ne correspond à rien utilise le premier modèle. Faites glisser votre modèle d’article générique tout en haut pour qu’il serve de solution par défaut.

Aide-mémoire des variables et filtres

Les cinq types de variables :

  • Prédéfinies : {{title}}, {{url}}, {{author}}, {{published}}, {{content}}, {{highlights}}, {{date}}
  • Prompt (Interpreter) : {{"a summary of the page"}}
  • Meta : {{meta:name:description}}, {{meta:property:og:title}}
  • Sélecteur : {{selector:h1}}, {{selectorHtml:#main|markdown}}
  • Schema.org : {{schema:@Recipe:recipeIngredient}}, {{schema:author.name}}

Les filtres dont vous vous servirez le plus : date, duration, wikilink, list (avec task ou numbered), join, replace, safe_name, markdown, remove_html, blockquote et callout. La logique de modèle ({% if %}, {% for %}, {% set %} et la valeur de repli ??) gère les données manquantes.

Ou se passer de l’entretien des modèles

Les modèles ont un coût que la documentation ne mentionne pas : l’entretien. Les sites changent leur code, les sélecteurs cassent sans bruit, et vous vous en rendez compte des semaines plus tard, quand une note arrive vide. Si vous capturez des pages sur des dizaines de sites, vous finissez par maintenir une petite base de code.

Minibase prend l’autre chemin. Au lieu d’un modèle par site, il intègre un traitement dédié pour des centaines de sites (threads X, Reddit, GitHub, conversations ChatGPT et Claude, pages de documentation) et renvoie un Markdown propre avec frontmatter, sans aucune configuration. Les fichiers .md arrivent dans un dossier Minibase Vault vers lequel vous pouvez pointer Obsidian : ils apparaissent dans votre coffre comme n’importe quelle autre note.

L’offre gratuite donne droit à 20 enregistrements par mois, sans compte. Minibase+ (5,99 $/mois ou 34,99 $/an) ajoute plus de 20 modèles IA (Obsidian, Académique, Recette, notes Cornell, Flashcards, etc.) et la transcription des vidéos YouTube, Reels et TikTok. Voici comment fonctionnent les transcriptions YouTube.

Pour être juste envers Obsidian : si vous capturez des pages sur une poignée de sites et que vous aimez peaufiner vos notes, le clipper officiel avec les modèles ci-dessus est excellent et ne coûte rien. Si vous préférez ne pas déboguer des sélecteurs CSS, Minibase est l’option sans entretien, et rien ne vous empêche d’utiliser les deux. Nous les avons comparés en détail dans Obsidian Web Clipper vs Minibase.

FAQ

Où trouver d’autres modèles Obsidian Web Clipper ? Le dépôt clipper-templates de Kepano sur GitHub propose des modèles pour YouTube, Wikipédia, les recettes, IMDb, Goodreads, arXiv et plus encore. Le forum et le Discord d’Obsidian regorgent de modèles de la communauté.

Le Web Clipper peut-il enregistrer les transcriptions YouTube ? Oui, quand la vidéo a des sous-titres : les versions récentes exposent une variable {{transcript}} sur les pages YouTube. Les vidéos sans sous-titres n’ont pas de transcription à récupérer.

Pourquoi mon modèle ne se déclenche-t-il pas ? En général, c’est une question d’ordre : un autre modèle plus haut dans la liste a correspondu en premier. Vérifiez aussi que les triggers simples correspondent exactement au début de l’URL (https://www. contre https://).

Les variables de prompt sont-elles payantes ? Elles tournent sur le modèle que vous configurez dans Interpreter. Les fournisseurs cloud facturent votre clé API ; un modèle local via Ollama est gratuit.

Continue reading

Prêt à sauvegarder plus intelligemment ?

Convertissez n'importe quelle page web en Markdown en un clic.

Ajouter à Chrome