2009-08-03 6 views
2

Quel analyseur HTML pour Ruby sera le plus facile à utiliser si je suis déjà familier/amoureux de jQuery?La plupart des parseurs HTML de type jQuery pour Ruby

Un tel analyseur aurait la philosophie générale de jQuery - « saisir certains éléments HTML (en utilisant les sélecteurs CSS) et faire des choses avec eux » - et en plus des équivalents pour toutes les fonctionnalités de manipulation DOM jQuery (prepend(), after(), etc.).

De toute évidence, il ne serait pas logique pour un analyseur côté serveur de prendre en charge les événements jQuery, les effets ou les fonctionnalités AJAX.

Éditer: Hpricot fait-il cela assez bien (par exemple, doc.search('#menu').inner_html) - y at-il quelque chose avec une meilleure API? (Quand je Google "nokogiri v.hpricot" tout ce que je reçois sont des comparaisons de vitesse.Je ne me soucie pas de la vitesse! Je veux juste une bibliothèque qui est amusant/facile à utiliser!)

+0

L'API de Nokogiri est assez similaire à celle de Hpricot (sans compter que Nokogiri peut imiter l'API de Hpricot). Je ne suis pas particulièrement clair sur ce que vous pensez être faux avec l'API de Hpricot. Qu'est-ce que tu cherches qui ne te donne pas? – Pesto

+0

> Qu'est-ce que tu cherches qui ne te donne pas? Rien de particulier, je me demandais juste si une autre bibliothèque était généralement préférée. –

Répondre

4

Vous seriez probablement le plus à la maison avec Hpricot. Heck, il dit même juste là sur la première page:

hpricot est un analyseur HTML très flexible, basé sur htree et jQuery de John Resig de Akira Tanaka, mais avec le scanner recodé en C. I » J'ai emprunté (ce que je crois être) les meilleures idées de ces marchandises pour faire des tas Hpricot de plaisir à utiliser.

+0

maintenant http://github.com/hpricot/hpricot –

-5

Ne serait-ce pas plus que réalisable en utilisant rien d'autre que string manipulation propre de Ruby et certains très légère regex (peut-être? Je n'ai pas touché rubis dans un certain temps).

+5

Rien, mais la manipulation la plus basique de HTML devrait * toujours * être faite en utilisant la manipulation de chaînes et regex. – Pesto

+0

Pas dans un million d'années. – Chuck

Questions connexes