Alternatives to HtmlAgilityPack?

Viewed 6965

I don't like some of the design decisions made in HtmlAgilityPack:

  • When using SelectNodes, if no nodes are found, it returns null rather than an empty set, so you can't just foreach over it without a null check.
  • When trying to select children with node.SelectNodes it actually searches from the document root unless you use descendant:: which is not obvious nor expected behavior at all, IMO.
  • HtmlDocument.Load doesn't return the root node, which is what you'd want 99% of the time, I think

You might disagree with that of course, but that's not the point. I'm looking for something different. Something that behaves a little more expected, or something that uses jQuery syntax would be even better. Suggestions?

2 Answers
Related