Quels sont les documents XML et HTML?
Les documents HTML sont tout document qui contient un langage de marque hypertexte, qui est le format de base utilisé pour décrire la structure des documents affichés sur le Web.
De même, les documents XML sont des documents contenant du balisage XML. Selon la documentation officielle, XML ou le langage de balisage extensible est un langage de balisage qui définit les règles de codage des documents pour la lisibilité humaine et machine.
Les documents HTML et XML se terminent par .html et .XML, respectivement.
Installation
Avant de pouvoir traiter tous les documents XML ou HTML dans Ruby, nous devons installer la bibliothèque Parser XML / HTML. Dans cet exemple, nous utiliserons la bibliothèque Nokogiri.
Pour l'installer, utilisez la commande GEM Package Manager:
$ gem install nokogiri
Récupérer nokogiri-1.12.0-x86_64-linux.gemme
Installé avec succès nokogiri-1.12.0-x86_64-linux
Documentation d'analyse pour NoKogiri-1.12.0-x86_64-linux
Installation de la documentation RI pour NoKogiri-1.12.0-x86_64-linux
Fait de l'installation de la documentation pour Nokogiri après 1 seconde
1 gemme installé
Une fois installé, vous pouvez le tester en lançant la coque interactive Ruby avec la commande IRB.
Ensuite, importez le package comme:
nécessitent 'nokogiri'
=> vrai
Chargement des documents HTML / XML
Pour charger des documents HTML ou XML à l'aide de la bibliothèque NoKogiri, vous utilisez l'opérateur de résolution d'espace de noms Ruby et accédez au chargeur, soit le HTML ou XML.
Par exemple: pour charger HTML, utilisez:
nécessitent 'nokogiri'
html_data = nokogiri :: html ('
Document
<')
met html_data.classe
L'exemple de code doit charger le contenu HTML et les enregistrer dans la variable définie. Pour vérifier la classe source des données, nous utilisons le .Méthode de classe.
Le code doit afficher la sortie comme:
Nokogiri :: html4 :: document
Chargement à partir du fichier
Nous pouvons également charger les données d'un fichier HTML / XML. Considérez un exemple de fichier avec le contenu XML comme:
Pour charger le fichier XML avec NoKogiri, vous pouvez utiliser l'exemple de code comme indiqué:
nécessitent 'nokogiri'
sample_data = fichier.ouvert ('échantillon.xml ')
parsed_info = nokogiri :: xml (samptonnet_data)
met parsed_info
Recherche d'un document XML
Pour rechercher un document XML ou HTML chargé, nous pouvons utiliser la méthode XPATH.
Par exemple: dans l'exemple de fichier XML ci-dessus, pour obtenir toutes les valeurs, nous pouvons faire:
nécessitent 'nokogiri'
sample_data = fichier.ouvert ('échantillon.xml ')
parsed_info = nokogiri :: xml (samptonnet_data)
met parsed_info.xpath ("// valeur")
L'exemple de code ci-dessus doit renvoyer les valeurs avec le mot clé de la valeur.
Obtenez un article individuel
Nous pouvons également obtenir la valeur d'un élément individuel. Par exemple: pour obtenir le document, saisissez l'exemple de fichier XML ci-dessus:
nécessitent 'nokogiri'
sample_data = fichier.ouvert ('échantillon.xml ')
parsed_info = nokogiri :: xml (samptonnet_data)
met parsed_info.xpath ("/ * / @ document_type")
Le code doit renvoyer la valeur du document_type.
Convertir XML en HTML
Vous pouvez également convertir un document XML analysé en HTML en utilisant la méthode TO_HTML. Voici un exemple de code:
nécessitent 'nokogiri'
sample_data = fichier.ouvert ('échantillon.xml ')
parsed_info = nokogiri :: xml (samptonnet_data)
zéro = parsed_info.to_html
met zéro
Cela devrait renvoyer les données XML à HTML sous la forme d'une chaîne.
Conclusion
Ce court tutoriel vous a montré comment analyser les documents XML à l'aide du package NoKogiri. Reportez-vous à la documentation pour découvrir ses capacités complètes.