modulexml
module de traitement XML, vous pouvez utiliser le module XML pour analyser et traiter les fichiers XML et HTML
Pour analyser le fichier XML, vous pouvez utiliser un code comme celui-ci :
1
2
3
4
5
6
7var xml = require('xml');
var fs = require('fs');
var xmlStr = fs.readFile('test.xml');
var xmlDoc = xml.parse(xmlStr);
console.log(xmlDoc.documentElement.nodeName); // output root node name
Dans le code ci-dessus, nous utilisonsfsLa méthode readFile du module lit un fichier XML, puis utilise la méthode parse du module XML pour analyser le fichier XML et renvoie unXmlDocumentObjet xmlDoc. Ensuite, nous pouvons accéder à l'élément racine du document XML via xmlDoc.documentElement.
Pour analyser les fichiers html, il vous suffit de modifier légèrement votre code :
1
2
3
4
5
6
7var xml = require('xml');
var fs = require('fs');
var htmlStr = fs.readFile('test.html');
var xmlDoc = xml.parse(htmlStr, 'text/html');
console.log(xmlDoc.documentElement.nodeName); // output root node name
Ici, nous utilisons égalementfsLa méthode readFile du module lit un fichier html, mais lorsque nous appelons la méthode parse du module xml, nous spécifions le deuxième paramètre comme 'text/html', afin que le module xml analyse le fichier selon les règles grammaticales de html.
Les objets du document XML analysés sontXmlDocumentLes types, leurs propriétés et méthodes peuvent tous être manipulés en référence au modèle d'objet XML (DOM).
objet
Document
objet de document XML, voirXmlDocumentobjet
1XmlDocument xml.Document;
fonction statique
parse
Analyser le texte XML/html et créerXmlDocumentObjet, le multilingue n'est pas pris en charge
1
2static XmlDocument xml.parse(String source,
String type = "text/xml");
Paramètres d'appel :
- source: String, spécifie le texte XML/html qui doit être analysé
- type: String, spécifie le type de texte, la valeur par défaut est text/xml, il peut également être spécifié comme text/html
Résultats de retour :
- XmlDocument, renvoie le crééXmlDocumentobjet
Analyser XML/html et créerXmlDocumentObjet, qui sera converti selon la langue spécifiée lors de l'analyse
1
2static XmlDocument xml.parse(Buffer source,
String type = "text/xml");
Paramètres d'appel :
- source:Buffer, spécifiez les données binaires XML/html qui doivent être analysées
- type: String, spécifie le type de texte, la valeur par défaut est text/xml, il peut également être spécifié comme text/html
Résultats de retour :
- XmlDocument, renvoie le crééXmlDocumentobjet
serialize
SérialisationXmlNodeest une chaîne
1static String xml.serialize(XmlNode node);
Paramètres d'appel :
Résultats de retour :
- String, renvoie la chaîne sérialisée
constante
ELEMENT_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlElementobjet
1const xml.ELEMENT_NODE = 1;
ATTRIBUTE_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlAttrobjet
1const xml.ATTRIBUTE_NODE = 2;
TEXT_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlTextobjet
1const xml.TEXT_NODE = 3;
CDATA_SECTION_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlCDATASectionobjet
1const xml.CDATA_SECTION_NODE = 4;
PROCESSING_INSTRUCTION_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlProcessingInstructionobjet
1const xml.PROCESSING_INSTRUCTION_NODE = 7;
COMMENT_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlCommentobjet
1const xml.COMMENT_NODE = 8;
DOCUMENT_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlDocumentobjet
1const xml.DOCUMENT_NODE = 9;
DOCUMENT_TYPE_NODE
XmlNodeLa constante d'attribut nodeType indique que le nœud estXmlDocumentTypeobjet
1const xml.DOCUMENT_TYPE_NODE = 10;