api
FreeUse html-to-markdown-rs api reference documentation.
The English summary is being prepared. Showing the original description.
Use when extracting tabular data from HTML. Covers GFM Markdown tables, the structured tables array (grid cells plus pre-rendered markdown), and HTML line breaks in table cells.
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Use this when the user wants tabular data out of HTML — pricing tables, data
grids, spec sheets. html-to-markdown parses <table> elements into two
surfaces: inline GFM Markdown tables in the content stream, and a
structured tables array when document structure extraction is enabled.
# Inline GFM tables appear in the Markdown body
html-to-markdown input.html
# Structured table data appears under .tables in CLI JSON
html-to-markdown --json --include-structure input.html | jq '.tables'
content — | col | col | blocks, good for LLM
ingestion and human reading.tables array — each entry has a markdown field
(pre-rendered) and a grid of structured cells (rows × cols). Use this when
downstream code needs exact cell access.Inline Markdown tables are rendered by default. Structured tables require
--include-structure in the CLI, include_document_structure=True in Python,
or includeDocumentStructure: true in Node.js.
When you only care about tables (not the Markdown body):
html-to-markdown --json --include-structure --no-content input.html | jq '.tables'
# How many tables, and the row count of each
html-to-markdown --json --include-structure input.html \
| jq '.tables | to_entries | map({index: .key, rows: .value.grid.rows, cols: .value.grid.cols})'
# Just the rendered markdown of the first table
html-to-markdown --json --include-structure input.html | jq -r '.tables[0].markdown'
By default <br> inside a cell is converted to a space. Keep hard breaks:
html-to-markdown input.html --br-in-tables
from html_to_markdown import convert, ConversionOptions
html = "<table><tr><th>A</th><th>B</th></tr><tr><td>1</td><td>2</td></tr></table>"
# result.tables is only populated when include_document_structure=True
result = convert(html, ConversionOptions(include_document_structure=True))
for table in result.tables:
print(table.markdown) # rendered GFM markdown
print(table.grid.cells[0].content) # first cell (grid is a TableGrid)
import { convert } from "@xberg-io/html-to-markdown";
// Node's convert() returns a ConversionResult object directly.
const result = convert(html, { includeDocumentStructure: true });
for (const table of result.tables ?? []) {
console.log(table.markdown); // rendered table
// table.grid is a TableGrid: { rows, cols, cells: GridCell[] }
}
row_span and col_span on each grid cell.
Inspect both cell positions and span dimensions when reconstructing a layout.result.warnings
(or --show-warnings) for non-fatal issues.See references/cli-reference.md (Tables section) for the
full flag set.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use html-to-markdown-rs api reference documentation.
The English summary is being prepared. Showing the original description.
Use html-to-markdown-rs cli reference documentation.
The English summary is being prepared. Showing the original description.
Convert HTML to Markdown, Djot, or plain text with structured extraction. Use when writing code that calls html-to-markdown APIs in Rust, Python, TypeScript, Go, Ruby, PHP, Java, C#, Elixir, R, C, or WASM. Covers installation, conversion, configuration, metadata extraction, tables, document structure, inline images, URL fetching, and CLI usage.
The English summary is being prepared. Showing the original description.
Use when converting HTML to Markdown, Djot, or plain text. Covers output formats, heading and code-block styles, lists, escaping, wrapping, and HTML preprocessing.
The English summary is being prepared. Showing the original 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.
The English summary is being prepared. Showing the original description.
Use when fetching a live URL and converting it to Markdown. Covers --url, custom user agents, preprocessing for noisy pages, and the --json ConversionResult shape.
The English summary is being prepared. Showing the original description.