Skip to main content

Turn HTML into equivalent Markdown-structured text.

Project description

html2text

Build Status Coverage Status Downloads Version Wheel? Format License

html2text is a Python script that converts a page of HTML into clean, easy-to-read plain ASCII text. Better yet, that ASCII also happens to be valid Markdown (a text-to-HTML format).

Usage: html2text [filename [encoding]]

Option Description
--version Show program's version number and exit
-h, --help Show this help message and exit
--ignore-links Don't include any formatting for links
--escape-all Escape all special characters. Output is less readable, but avoids corner case formatting issues.
--reference-links Use reference links instead of links to create markdown
--mark-code Mark preformatted and code blocks with [code]...[/code]

For a complete list of options see the docs

Or you can use it from within Python:

>>> import html2text
>>>
>>> print(html2text.html2text("<p><strong>Zed's</strong> dead baby, <em>Zed's</em> dead.</p>"))
**Zed's** dead baby, _Zed's_ dead.

Or with some configuration options:

>>> import html2text
>>>
>>> h = html2text.HTML2Text()
>>> # Ignore converting links from HTML
>>> h.ignore_links = True
>>> print h.handle("<p>Hello, <a href='https://www.google.com/earth/'>world</a>!")
Hello, world!

>>> print(h.handle("<p>Hello, <a href='https://www.google.com/earth/'>world</a>!"))

Hello, world!

>>> # Don't Ignore links anymore, I like links
>>> h.ignore_links = False
>>> print(h.handle("<p>Hello, <a href='https://www.google.com/earth/'>world</a>!"))
Hello, [world](https://www.google.com/earth/)!

Originally written by Aaron Swartz. This code is distributed under the GPLv3.

How to install

html2text is available on pypi https://pypi.org/project/html2text/

$ pip install html2text

How to run unit tests

tox

To see the coverage results:

coverage html

then open the ./htmlcov/index.html file in your browser.

Documentation

Documentation lives here

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

html2text-2019.8.11.tar.gz (48.7 kB view details)

Uploaded Source

Built Distribution

html2text-2019.8.11-py2.py3-none-any.whl (31.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file html2text-2019.8.11.tar.gz.

File metadata

  • Download URL: html2text-2019.8.11.tar.gz
  • Upload date:
  • Size: 48.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for html2text-2019.8.11.tar.gz
Algorithm Hash digest
SHA256 f516b9c10284174e2a974d86f91cab02b3cf983a17752075da751af0e895ef5e
MD5 21aad7ec95b70606024b783c8253899c
BLAKE2b-256 d484e13105d1275ee46a9e8800f9c90186932cf8e185f54c8987e8a14fc478af

See more details on using hashes here.

File details

Details for the file html2text-2019.8.11-py2.py3-none-any.whl.

File metadata

  • Download URL: html2text-2019.8.11-py2.py3-none-any.whl
  • Upload date:
  • Size: 31.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.7.4

File hashes

Hashes for html2text-2019.8.11-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 c476417609d89a8e1de4b88f3bae33498b9dcfdb16c152c768e159db36c60f79
MD5 e3e174b9f3c86fba1b939bd5cc0bb18b
BLAKE2b-256 f0682bdc9ff2202b53d2fd6321be48d1effca0f679f0797701017df5be26bd82

See more details on using hashes here.

Supported by

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