This is a pure Dart html5 parser. It's a port of html5lib from Python. Since it's 100% Dart you can use it safely from a script or server side app.
Eventually the parse tree API will be compatible with dart:html, so the same code will work on the client and the server.
(Formerly known as html5lib.)
Add this to your pubspec.yaml
(or create it):
dependencies:
html: any
Then run the Pub Package Manager (comes with the Dart SDK):
pub install
Parsing HTML is easy!
import 'package:html/parser.dart' show parse;
import 'package:html/dom.dart';
main() {
var document = parse(
'<body>Hello world! <a href="www.html5rocks.com">HTML5 rocks!');
print(document.outerHtml);
}
You can pass a String or list of bytes to parse
.
There's also parseFragment
for parsing a document fragment, and HtmlParser
if you want more low level control.
./test/run.sh