Alternatives à HtmlAgilityPack?

c# html-agility-pack

Question

Je n'aime pas certaines des décisions de conception prises dans HtmlAgilityPack:

  • Lorsque vous utilisez SelectNodes , si aucun nœud se trouvent, elle renvoie null plutôt que d' un ensemble vide, de sorte que vous ne pouvez pas simplement foreach dessus sans contrôle nul.
  • Lorsque vous essayez de sélectionner des enfants avec node.SelectNodes il effectue une recherche à partir de la racine du document, à moins que vous n'utilisiez descendant:: ce qui n'est ni évident, ni le comportement attendu, IMO.
  • HtmlDocument.Load ne HtmlDocument.Load pas le nœud racine, ce qui est ce que vous souhaiteriez 99% du temps, je pense

Vous pouvez être en désaccord avec cela, bien sûr, mais ce n'est pas le but. Je cherche quelque chose de différent . Quelque chose qui se comporte un peu plus, ou quelque chose utilisant la syntaxe jQuery serait encore mieux. Suggestions?

Réponse populaire

Projet lancé appelé SharpQuery

Prend actuellement en charge les sélecteurs d'identifiant, de classe, de balise et d'attribut.

a
a[href]
a[href^=http://stackoverflow.com]
.class
#id

Mise à jour: je ne maintiens pas ce projet, désolé. CsQuery a des mises à jour récentes (à compter de juillet 2013), mais je n'ai aucune expérience de son utilisation.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi