Skip to main content

extracting-metadata

Use when extracting metadata from HTML — title, description, language, Open Graph, JSON-LD / Microdata / RDFa, headers, links, and images. Covers the --json output shape and the --extract-metadata flag.

Informations de source

Dépôt
xberg-io/plugins
Dernière activité de la source
12 juillet 2026 à 05:08
Langue détectée de SKILL.md
anglais
Étoiles
26
Forks
3

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
extracting-metadata
description
Use when extracting metadata from HTML — title, description, language, Open Graph, JSON-LD / Microdata / RDFa, headers, links, and images. Covers the --json output shape and the --extract-metadata flag.
<!-- AI-RULEZ :: GENERATED FILE — DO NOT EDIT Content-Hash: blake3:ae51acb06cdeff000766f2be8e3ad4fd789ea46c0b61c78d3158a3646842e276 Source-Hash: blake3:b863a9279a8e31251a475dd8c895529ec38eec6b6506af4fe5c874832e9a48a6 Schema-Version: v1 --> # Extracting metadata Use this when the user wants structured metadata out of HTML rather than (or in addition to) the Markdown body — page title, description, language, Open Graph tags, structured data, the heading outline, links, or image references. Metadata lives in `result.metadata` and is surfaced on the CLI through `--json`. Metadata is extracted by default; all sub-fields below populate automatically inside `result.metadata` whenever `--json` is used. There are no per-field extraction flags. ## Get all metadata ```bash html-to-markdown --json input.html | jq '.metadata' # Extraction-only (skip the Markdown body) html-to-markdown --json --no-content input.html | jq '.metadata' ``` ## Metadata sub-fields ```json { "metadata": { "document": { "title": "...", "description": "...", "language": "en", "open_graph": {"title": "..."} }, "headers": [ { "level": 1, "text": "Main Heading" } ], "links": [ { "href": "https://example.com", "link_type": "external" } ], "images": [ { "src": "photo.jpg", "alt": "A photo", "image_type": "external" } ], "structured_data": [ /* JSON-LD, Microdata, RDFa blocks */ ] } } ``` ## Metadata flag There is one metadata flag. The sub-fields above (`document`, `headers`, `links`, `images`, `structured_data`) are always populated under `result.metadata` when `--json` is set — select what you need with `jq`. | Flag | Effect | | ---- | ------ | | `--extract-metadata` | (plain-text mode, no `--json`) emit title + meta tags as an HTML-comment header at the top of the Markdown output | ```bash # Pull just the document-level metadata and the heading outline html-to-markdown --json --no-content input.html \ | jq '{title: .metadata.document.title, lang: .metadata.document.language, outline: [.metadata.headers[].text]}' ``` ## Common queries ```bash # Title + canonical language html-to-markdown --json input.html | jq '{title: .metadata.document.title, lang: .metadata.document.language}' # External links only html-to-markdown --json input.html | jq '[.metadata.links[] | select(.link_type == "external") | .href]' # Open Graph card html-to-markdown --json input.html | jq '.metadata.document.open_graph' # JSON-LD blocks html-to-markdown --json input.html | jq '.metadata.structured_data' ``` ## Programmatic access ```python from html_to_markdown import convert result = convert(html) meta = result.metadata print(meta.document.title) # "My Article" print(meta.document.language) # "en" print(meta.headers[0].text) # "Main Heading" print(meta.links[0].link_type) # "external" print(meta.images[0].alt) # "A photo" ``` Metadata is available from the single `convert()` call in Python, Rust, Go, Ruby, and Elixir; in TypeScript read it off the returned result object. In Rust it requires the `metadata` feature (on by default). See `../html-to-markdown/references/cli-reference.md` (Metadata section) and `../html-to-markdown/references/configuration.md` for field details.
Voir sur GitHub