2010-09-19 9 views
3

J'accède à un site Web et j'ai besoin d'extraire des données. Pour être plus précis - à partir de cette partie:Extraction de données HTML

<input type="hidden" value="1" name="d520783895194bd08750e47c744d553d"> 

J'ai besoin d'extraire la partie "nom". J'ai entendu dire que les expressions reular ne sont pas la meilleure solution, donc je voudrais demander quelle est la meilleure façon d'accéder à cette donnée dont j'ai besoin.

Répondre

2

Après l'analyse d'un site Web avec NekoHTML ou TagSoup (qui devrait prendre soin du fait que votre balise de champ d'entrée est fermé), je vous suggère d'utiliser une expression XPath:

//input[@type='hidden'][@value=1]/@name 

Groovy vous appliquerez sous forme de GPath.

2

Utilisez une bibliothèque d'analyse Html, ils corrigent Html malformé pour faciliter la navigation dans le document pour rechercher et mettre à jour les éléments. Voici un lien vers une liste de Java/implémentations Grovy:

http://www.wavyx.net/2009/01/13/looking-for-a-java-html-parser-or-groovy/

On dirait NekoHTML et TagSoup sont populaires, mais je n'ai pas utilisé l'un ou Grovy pour cette question. Mais j'ai utilisé Html Parsers dans d'autres langues.

Questions connexes