JTidy Node.findBody() — How to use?

2019-05-06 22:06发布

I'm trying to do XHTML DOM parsing with JTidy, and it seems to be rather counterintuitive task. In particular, there's a method to parse HTML:

Node Tidy.parse(Reader, Writer)

And to get the <body /> of that Node, I assume, I should use

Node Node.findBody(TagTable)

Where should I get an instance of that TagTable? (Constructor is protected, and I haven't found a factory to produce it.)

I use JTidy 8.0-SNAPSHOT.

2条回答
我只想做你的唯一
2楼-- · 2019-05-06 22:32

I found there's much simpler method to extract the body:

tidy = new Tidy();
tidy.setXHTML(true);
tidy.setPrintBodyOnly(true);

And then use tidy on the Reader-Writer pair.

Simple as it should be.

查看更多
Lonely孤独者°
3楼-- · 2019-05-06 22:32

You could use the parseDOM method instead, which would give you a org.w3c.dom.Document back:

Document document = Tidy.parseDOM(reader, writer);
Node body = document.getElementsByTagName("body").item(0);
查看更多
登录 后发表回答