html2text(1) Manual Page
Name
html2text - an advanced HTML-to-text converter
Synopsis
html2text -help
html2text -version
html2text [ -unparse | -check ] [
-debug-scanner ] [ -debug-parser ] [ -rcfile
path ] [ -style ( compact | pretty ) ]
[ -width width ] [ -o output-file ] [
-nobs ] [ -ascii ] [ input-url ... ]
Description
html2text reads HTML documents from the
input-urls, formats each of them into a stream of plain text
characters, and writes the result to standard output (or into
output-file, if the -o command line option is
used).
Documents that are specified by a URL
(RFC 1738)
that begins with http: are retrieved with the Hypertext Transfer
Protocol (RFC 1945). URLs that begin with file: and
URLs that do not contain a colon specify local files. All other
URLs are invalid.
If no input-urls are specified on the command line,
html2text reads from standard input. A dash as the
input-url is an alternate way to specify standard input.
html2text understands all HTML 3.2 constructs, but can
render only part of them due to the limitations of the text output
format. However, the program attempts to provide good substitutes
for the elements it cannot render. html2text parses HTML 4
input, too, but not always as successful as other HTML processors.
It also accepts syntactically incorrect input, and attempts to
interpret it reasonably".
The way html2text formats the HTML documents is
controlled by formatting properties read from an RC file.
html2text attempts to read $HOME/.html2textrc (or the
file specified by the -rcfile command line option); if that
file cannot be read, html2text attempts to read
/etc/html2textrc. If no RC file can be read (or if the RC
file does not override all formatting properties), then reasonable
defaults are assumed. The RC file format is described in the
html2textrc(5) manual page.
Options
- -ascii
- By default, html2text uses ISO 8859-1
for the output. Specifying this option, plain
ASCII is used instead. To find out how non-ASCII characters
are rendered, refer to the file "ascii.substitutes".
- -check This option is for diagnostic purposes:
- The HTML document is only parsed and not processed otherwise.
In this mode of operation, html2text will report on parse
errors and scan errors, which it does not in other modes of
operation. Note that parse and scan errors are not fatal for
html2text, but may cause misinterpretation of the HTML code
and/or portions of the document being swallowed.
- -debug-parser
- Let html2text report on the tokens being shifted, rules
being applied, etc., while scanning the HTML document. This option
is for diagnostic purposes.
- -debug-scanner
- Let html2text report on each lexical token scanned,
while scanning the HTML document. This option is for diagnostic
purposes.
- -help
- Print command line summary and exit.
- -nobs
- By default, html2text renders underlined letters with
sequences like underscore-backspace-character and boldface letters
like character-backspace-character", which works fine when the
output is piped into more(1), less(1),
or similar. For other applications, or
when redirecting the output into a file, it may be desirable not to
render character attributes with such backspace sequences, which
can be accomplished with this command line option.
- -o output-file
- Write the output to output-file instead of standard
output. A dash as the output-file is an alternate way to
specify the standard output.
- -rcfile path
- Attempt to read the file specified in path as RC
file.
- -style (compact | pretty)
- Style pretty changes some of the default values of the
formatting parameters documented in html2textrc(5).
To find out which and how
the formatting parameter defaults are changed, check the file
pretty.style". If this option is omitted, style compact is
assumed as default.
- -unparse
- This option is for diagnostic purposes: Instead of formatting
the parsed document, generate HTML code, that is guaranteed to be
syntactically correct. If html2text has problems parsing a
syntactically incorrect HTML document, this option may help you to
understand what html2text thinks that the original HTML code
means.
- -version
- Print program version and exit.
- -width width
- By default, html2text formats the HTML documents for a
screen width of 79 characters. If redirecting the output into a
file, or if your terminal has a width other than 80 characters, or
if you just want to get an idea how html2text deals with
large tables and different terminal widths, you may want to specify
a different width.
Files
- /etc/html2textrc
- System wide parser configuration file.
- $HOME/.html2textrc
- Personal parser configuration file, overrides the system wide
values.
Conforming to
HTML 3.2 (HTML 3.2 Reference Specification -
http://www.w3.org/TR/REC-html32-19970114),
RFC 1945 (Hypertext Transfer Protocol - HTTP).
Restrictions
html2text provides only a basic implementation of the
Hypertext Transfer Protocol (HTTP). It requires the complete and
exactly matching URL to be given as argument and will not follow
redirections (HTTP 301/ 307).
html2text was written to convert HTML 3.2 documents. When
using it with HTML 4 or even XHTML 1 documents, some constructs
present only in these HTML versions might not be rendered.
Author
html2text was written up to version 1.2.2 by Arno Unkrig
<arno[at]unkrig[dot]de> for GMRS Software GmbH,
Unterschleissheim.
Current maintainer and primary download location is:
Martin Bayer <html2text[at]mbayer[dot]de>
http://www.mbayer.de/html2text/
See Also
html2textrc(5),
less(1), more(1)