Skip to main content

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|url) [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='http://earth.google.com/'>world</a>!")
Hello, world!

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

Hello, world!

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

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

How to install

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

$ pip install html2text

How to run unit tests

PYTHONPATH=$PYTHONPATH:. coverage run --source=html2text setup.py test -v

To see the coverage results:

coverage combine
coverage html

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

Documentation

Documentation lives here

Release files for html2text 2018.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for html2text 2018.1.9
File Size Uploaded
html2text-2018.1.9.tar.gz 52.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for html2text 2018.1.9
File Interpreter ABI Platform
html2text-2018.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 73.3 kB

Release files / html2text-2018.1.9.tar.gz

Download URL html2text-2018.1.9.tar.gz
Size 52.2 kB
Tags Source
SHA-256 checksum
How to use checksums
627514fb30e7566b37be6900df26c2c78a030cc9e6211bda604d8181233bcdd4
BLAKE2b-256 checksum
How to use checksums
dd79f8387c4e82275a7b540e0b948d261a636eb5aedd1d23be8ca05fbf605726
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / html2text-2018.1.9-py3-none-any.whl

Download URL html2text-2018.1.9-py3-none-any.whl
Size 21.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
490db40fe5b2cd79c461cf56be4d39eb8ca68191ae41ba3ba79f6cb05b7dd662
BLAKE2b-256 checksum
How to use checksums
1620de2b458ef434713053dd83209a03a5431ebe0527c8e14d9ae7838ff67d8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page