Skip to main content

Convert an article or web page to Markdown

Project description

article-to-md

A CLI tool to extract core content from webpages or local HTML and convert it to Markdown.

Usage: article-to-md [OPTIONS] SOURCE

Convert an article or web page to Markdown.

Commands:
  --help, -h: Display this message and exit.
  --version: Display application version.

Parameters:
  SOURCE, --source: A URL or local HTML file to process. [required]
  --method: The extraction engine to use. [choices: readability, trafilatura, raw] [default: readability]
  --favor: Whether to favor 'precision' or 'recall' when using trafilatura. [choices: recall, precision]
  --remove-ads, --no-remove-ads: Apply EasyList cosmetic filters to remove ads before processing. [default: False]
  --strip-tag, --no-strip: HTML tag to strip from the final output. Repeat this flag to remove multiple tags. Use --no-strip to disable. [default: ('img',)]

Installation

uv is recommended to install the package in a managed environment:

uv tool install article-to-md

Note: To use the readability method, Node.js (v14+) must be installed on your system. Without Node.js, the tool uses Python-based extraction.

Usage

From a publicly accessible web page:

article-to-md https://example.com/article

From a local HTML file:

article-to-md /path/to/file.html

Advanced options:

  • --remove-ads - Basic ad removal from the DOM using generic cosmetic filters from EasyList
  • --method - Affects pre-processing of the DOM before conversion to Markdown.
    • readability (default) - Uses ReadabiliPy which can use the original Readability.js Node package when Node is present on the system.
    • trafilatura - Uses the Trafilatura pure Python library
    • raw - Sends the full DOM to be converted
  • --favor - Only used with --method trafilatura to control options documented here.
  • --strip-tag - An HTML tag to be stripped from the DOM before conversion
    • This argument can be supplied multiple times
    • By default, <img> tags are stripped; use --no-strip to keep them.

Features

  • Stealth Requests: Uses curl_cffi to impersonate a Chrome browser and avoid bot detection.
  • Enhanced Markdown:
    • Converts <var> to italics.
    • Includes <abbr> titles in the text output.
    • Renders Markdown tables from HTML tables

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

article_to_md-0.5.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

article_to_md-0.5.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file article_to_md-0.5.0.tar.gz.

File metadata

  • Download URL: article_to_md-0.5.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for article_to_md-0.5.0.tar.gz
Algorithm Hash digest
SHA256 ef5447954ce00031fd895583bef9ac2175150d03d11867e165e4e5edba07f30f
MD5 2a443945537cae3b92d289d16cd8d600
BLAKE2b-256 8df0e686dbb38fb677d9a2919f60f45fb06b641ae599c4c6c63ae4149a45ff0e

See more details on using hashes here.

File details

Details for the file article_to_md-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: article_to_md-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for article_to_md-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e01bfcc76c48624403a349b86c7023bb571bd7e853c1afc9fc037d979b6d12e6
MD5 3b2213293523d664497eab1881822e39
BLAKE2b-256 dd8b3b1a87559b08fafda2fa36eacee6dcdefede8d718eeb9b4cc12dab89187c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page