Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
L’espace de noms Aspose.Html.Dom fournit une API qui représente et interagit avec tout document HTML, XML ou SVG et est entièrement basé sur la spécification WHATWG DOM prise en charge par de nombreux navigateurs modernes.
Cet article fournit des informations sur la manière d’extraire par programme des données de documents HTML avec Aspose.HTML for Python via .NET. Vous découvrirez :
La navigation en HTML implique l’accès et la manipulation des éléments et de leurs relations au sein d’un document. Aspose.HTML for Python via .NET vous permet de naviguer et d’inspecter le HTML, ce qui implique de travailler avec le modèle d’objet de document (DOM) fourni par la bibliothèque. La liste suivante montre la manière la plus simple d’accéder à tous les éléments du DOM :
tagname) pour récupérer les éléments par leur nom de balise.class_names) pour récupérer les éléments par leur nom de classe.selector) pour un seul élément ou
query_selector_all(selector) pour une liste d’éléments correspondant à un sélecteur CSS.nom_qualifié) et
set_attribute(nom_qualifié, valeur).Le
API Reference Source fournit une liste complète des classes et des méthodes de l’espace de noms aspose.html.dom.
Nous examinons comment le DOM représente un document HTML en mémoire et comment utiliser l’API pour naviguer dans les fichiers HTML. Quatre des propriétés de la classe
Node - first_child, last_child, next_sibling, et next_sibling, fournissent chacune une référence vivante à un autre élément avec la relation définie avec l’élément actuel si l’élément apparenté existe.
En utilisant les propriétés mentionnées, vous pouvez naviguer dans un document HTML comme suit :
1# Navigate the HTML DOM using Python
2
3import aspose.html as ah
4
5# Prepare HTML code
6html_code = "<span>Hello</span> <span>World!</span>"
7
8# Initialize a document from the prepared code
9with ah.HTMLDocument(html_code, ".") as document:
10 # Get the reference to the first child (first SPAN) of the BODY
11 element = document.body.first_child
12 print(element.text_content) # output: Hello,
13
14 # Get the reference to the whitespace between html elements
15 element = element.next_sibling
16 print(element.text_content) # output: " "
17
18 # Get the reference to the second SPAN element
19 element = element.next_sibling
20 print(element.text_content) # output: World!Aspose.HTML contient une liste de méthodes basées sur les Element Traversal Specifications. Vous pouvez effectuer une inspection détaillée du document et de ses éléments à l’aide de l’API. Le code Python suivant montre comment naviguer et extraire des éléments spécifiques et leurs propriétés d’un document HTML à l’aide d’Aspose.HTML for Python via .NET.
1# Navigate and inspect HTML document using Python
2
3import os
4import aspose.html as ah
5
6# Load a document from a file
7data_dir = "data" # Change this to your actual data directory
8document_path = os.path.join(data_dir, "html_file.html")
9with ah.HTMLDocument(document_path) as document:
10 # Get the html element of the document
11 element = document.document_element
12 print(element.tag_name) # HTML
13
14 # Get the last element of the html element
15 element = element.last_element_child
16 print(element.tag_name) # BODY
17
18 # Get the first element of the body element
19 element = element.first_element_child
20 print(element.tag_name) # H1
21 print(element.text_content) # Header 1Le code Python fourni commence par définir le chemin d’accès au fichier HTML situé dans le répertoire “data”.
HTMLDocument pour charger un document, et la propriété
document.document_element pour accéder à l’élément HTML racine. Affichez le nom de balise de cet élément, qui est “HTML”.L’alternative à la navigation HTML est la requête XPath ( XML Path Language) qui est souvent appelée simplement XPath. Il s’agit d’un langage de requête qui peut être utilisé pour interroger des données à partir de documents HTML. Il est basé sur une représentation DOM du document HTML et sélectionne les nœuds selon différents critères. La syntaxe des expressions XPath est assez simple et, ce qui est plus important, elle est facile à lire et à prendre en charge.
L’exemple suivant montre comment utiliser les requêtes XPath dans l’API Aspose.HTML Python :
1# How to use XPath to select nodes using Python
2
3import aspose.html as ah
4import aspose.html.dom.xpath as hxpath
5
6# Prepare HTML code
7code = """
8 <div class='happy'>
9 <div>
10 <span>Hello,</span>
11 </div>
12 </div>
13 <p class='happy'>
14 <span>World!</span>
15 </p>
16"""
17
18# Initialize a document based on the prepared code
19with ah.HTMLDocument(code, ".") as document:
20 # Here we evaluate the XPath expression where we select all child SPAN elements from elements whose 'class' attribute equals to 'happy'
21 result = document.evaluate("//*[@class='happy']//span",
22 document,
23 None,
24 hxpath.XPathResultType.ANY,
25 None)
26
27 # Iterate over the resulted nodes
28 node = result.iterate_next()
29 while node is not None:
30 print(node.text_content)
31 node = result.iterate_next()
32 # output: Hello,
33 # output: World!La méthode
evaluate() de la bibliothèque Aspose.HTML Python vous permet d’exécuter des requêtes XPath sur des documents HTML ou XML, permettant l’extraction de données détaillées et la navigation. Elle prend une expression XPath comme paramètre principal, spécifiant la requête à exécuter, et renvoie un objet XPathResult basé sur le type de résultat défini.
Outre la navigation HTML et XPath, l’API Aspose.HTML Python prend en charge l’API
CSS Selector API. Cette API vous permet de formuler des modèles de recherche à l’aide de la syntaxe
CSS Selectors pour identifier et sélectionner des éléments dans un document HTML. Par exemple, la méthode
query_selector_all(selector) peut être utilisée pour parcourir un document HTML et récupérer les éléments qui correspondent à un sélecteur CSS spécifié. Cette méthode accepte une chaîne de sélection CSS comme argument et renvoie une NodeList contenant tous les éléments conformes aux critères du sélecteur. Les sélecteurs CSS permettent de trouver et de manipuler efficacement des éléments en fonction de leurs attributs, de leurs classes, de leurs identifiants et d’autres critères, ce qui en fait un outil polyvalent pour les tâches d’analyse de documents simples et complexes. Cette fonctionnalité est particulièrement utile pour des tâches telles que le stylisme, l’extraction de données et la manipulation de contenu dans un document HTML.
1# Extract nodes Using CSS selector using Python
2
3import aspose.html as ah
4
5# Prepare HTML code
6code = """
7 <div class='happy'>
8 <div>
9 <span>Hello,</span>
10 </div>
11 </div>
12 <p class='happy'>
13 <span>World!</span>
14 <p>I use CSS Selector.</p>
15 </p>
16"""
17
18# Initialize a document based on the prepared code
19with ah.HTMLDocument(code, ".") as document:
20 # Create a CSS Selector that extracts all elements whose "class" attribute equals "happy" and their child <span> elements
21 elements = document.query_selector_all(".happy span")
22
23# Iterate over the resulted list of elements
24 for element in elements:
25 print(element.text_content)
26 # output: Hello,
27 # output: World!La bibliothèque Aspose.HTML for Python via .NET offre un ensemble d’outils robustes pour travailler avec des documents HTML, XML et SVG, en adhérant à la spécification WHATWG DOM largement supportée par les navigateurs modernes. En utilisant la classe HTMLDocument et ses diverses propriétés et méthodes de navigation, vous pouvez efficacement interagir avec et manipuler le contenu HTML, en évitant les complexités de l’extraction manuelle des données et en vous concentrant sur des aspects plus stratégiques de vos projets.
Aspose.HTML propose des applications Web HTML gratuites en ligne qui constituent une collection de convertisseurs, de fusions, d’outils de référencement, de générateurs de code HTML, d’outils d’URL, de vérifications de l’accessibilité du web, et bien d’autres choses encore. Les applications fonctionnent sur n’importe quel système d’exploitation doté d’un navigateur web et ne nécessitent aucune installation de logiciel supplémentaire. Utilisez notre collection d’applications web HTML pour effectuer vos tâches quotidiennes et faciliter votre travail !
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.