HTML parser based on the WHAT-WG Web Applications 1.0(
HTML parser designed to follow the WHATWG HTML5 specification. The parser is designed to handle all flavours of HTML and parses invalid documents using well-defined error handling rules compatible with the behaviour of major desktop web browsers.
Output is to a tree structure; the current release supports output to ElementTree (including cElementTree and lxml.etree), minidom, and a custom simpletree format.
html5lib also includes a HTML sanitizer, “treewalkers” for converting various tree formats into streams and filters and serializers to operate on those streams.