|
|
|
|
|
- Déclaration
- Propriétés spécifiques à la description des variables de type htmlNoeud
- Création d'un noeud texte
- Fonctions WLangage manipulant des variables de type htmlNoeud
htmlNoeud (Type de variable) En anglais : htmlNode
Le type htmlNoeud permet de définir toutes les caractéristiques avancées d'un noeud d'un document HTML. Les caractéristiques de ce noeud peuvent être définies et modifiées à l'aide de différentes propriétés WLangage. Remarque : Pour plus de détails sur la déclaration de ce type de variable et l'utilisation des propriétés WLangage, consultez Déclaration d'une variable. MonDocument est un htmlDocument  // Récupère le document depuis le champ d'affichage HTML MonDocument = HTM_Source.ValeurAffichée   // On veut récupérer uniquement les tarifs de livraison en points relais en fonction du poids // On récupère les pays // Dans le thead / 2ème TR / 3 premiers TD sPays1, sPays2, sPays3 est une chaîne  // On récupère le tableau des headers tabHeader est un tableau de htmlNoeud = MonDocument.ChercheElémentParBalise("thead")  // Sur le premier élément, on prend le deuxième fils (le deuxième TR) // Le premier fils de ce TR, c'est le TD du premier pays // A l'intérieur du TD, il peut y avoir d'autre balises (span, p) pour gérer les styles // Mais le contenu final est dedans, donc on peut récupérer le HTMLInterne du TD et // Le convertir "directement" en texte  sPays1 = HTMLVersTexte(tabHeader[1].tr[2].td[1]..HTMLInterne) // Le second fils de ce TR, c'est le TD du second pays sPays2 = HTMLVersTexte(tabHeader[1].tr[2].td[2]..HTMLInterne) // Le troisième fils de ce TR, c'est le TD du troisième pays sPays3 = HTMLVersTexte(tabHeader[1].tr[2].td[3]..HTMLInterne)  sPoids, sTarifPays1, sTarifsPays2, sTarifPays3 sont des chaînes  // Modifie les titres des colonnes de la table TABLE_Tarifs.COL_Pays1.Libellé = sPays1 TABLE_Tarifs.COL_Pays2.Libellé = sPays2 TABLE_Tarifs.COL_Pays3.Libellé = sPays3  POUR i = 1 _À_ 9  // On récupère le poids et les tarifs par pays  sPoids = MonDocument.html.body.div.div.table.tbody.tr[i].td[1]..Texte sTarifPays1 = MonDocument.html.body.div.div.table.tbody.tr[i].td[3]..Texte sTarifsPays2 = MonDocument.html.body.div.div.table.tbody.tr[i].td[4]..Texte sTarifPays3 = MonDocument.html.body.div.div.table.tbody.tr[i].td[5]..Texte  TABLE_Tarifs.AjouteLigne(sPoids, sTarifPays1, sTarifsPays2, sTarifPays3)  FIN Pour décrire un noeud HTML, le nom du noeud peut ensuite être spécifié par la propriété NomBalise. <Nom balise> : Chaîne de caractères Nom du noeud à créer. Remarques Propriétés spécifiques à la description des variables de type htmlNoeud Les propriétés suivantes peuvent être utilisées pour manipuler un noeud d'un document HTML : | | | Nom de la propriété | Type manipulé | Effet |
---|
Attribut | Tableau de htmlAttribut | Attributs pour un noeud de type htmlNoeudElément. | Existe | Booléen | - Vrai si le noeud existe réellement dans le document,
- Faux dans le cas contraire.
Cette propriété est disponible en lecture seulement. | HTMLExterne | Chaîne de caractères | Code HTML incluant le noeud courant (sous-noeud compris). Cette propriété est disponible en lecture seulement. | HTMLInterne | Chaîne de caractères | Code HTML des sous-noeuds dans le noeud courant. | Indice | Entier | Indice du noeud dans son parent. Cette propriété est disponible en lecture seulement. | NoeudFils | Tableau de variables de type htmlNoeud | Noeuds fils pour un noeud de type htmlNoeudElément. | NomBalise | Chaîne de caractères | Nom de la balise si le noeud est de type htmlNoeudElément, chaîne vide ("") dans les autres cas. | Occurrence | Entier | Nombre d'éléments de même nom. Cette propriété est disponible en lecture seulement. | Parent | Variable de type htmlNoeud | Noeud parent, NULL si le noeud est la racine. Cette propriété est disponible en lecture seulement. | Texte | Chaîne de caractères | Contenu du noeud encodé dans l'alphabet courant. - Si le noeud est de type htmlNoeudTexte, htmlNoeudCommentaire ou htmlNoeudCDATA, la propriété renvoie et affecte le noeud.
- Si le noeud est de type htmlNoeudElément, la propriété renvoie la concaténation du texte de tous les sous-noeuds.
L'affectation de la propriété vide les sous-noeuds et les remplace par un sous-noeud de type texte contenant la valeur affectée. | Type | Constante de type Entier | Type du noeud : - htmlNoeudCommentaire : Noeud de type commentaire.
- htmlNoeudCDATA : Noeud CDATA (compatibilité XHTML).
- htmlNoeudElément : Noeud de type élément, une balise du HTML.
- htmlNoeudTexte : Noeud de type texte.
|
Pour un noeud de type htmlNoeudElément, les opérateurs suivants sont disponibles : - Opérateur "." : L'opérateur "." permet d'accéder aux sous-éléments par leur nom de balise.
- Opérateur ":" : L'opérateur ":" permet d'accéder aux attributs par leur nom.
- Opérateur [ <indice> ] : Cet opérateur permet d'accéder aux sous-éléments frère de même nom par leur indice.
- Opérateur [ <nom> ] : Cet opérateur permet d'accéder aux sous-éléments par leur nom de balise.
Les noeuds de type htmlNoeudElément peuvent contenir des sous-noeuds. Parcours des sous-noeuds - La syntaxe "POUR TOUT x DE VariableNoeud" permet de parcourir tous les sous-noeuds.
- La syntaxe "POUR TOUT x DE VariableNoeud EN PROFONDEUR" permet de parcourir récursivement tous les sous-noeuds.
Cette syntaxe n'est pas disponible.
Création d'un noeud texte La déclaration d'un noeud texte peut être effectuée via une des syntaxes suivante : - Déclaration implicite :
o est un htmlNoeud o.Texte = "A" - Déclaration explicite :
o est un htmlNoeud o.Type = htmlNoeudTexte o.Texte = "A"
Fonctions WLangage manipulant des variables de type htmlNoeud - syntaxe classique :
- syntaxe préfixée :
Liste des exemples associés :
|
Exemples unitaires (WINDEV) : Le Type HTMLDocument
[ + ] Cet exemple permet de montrer comment utiliser le Type WLangage HTMLDocument.
|
|
Exemples didactiques (WINDEV) : WD Export HTML
[ + ] Cet exemple illustre l'export de données au format HTML avec les fonctions WLangage. Dans cet exemple, nous abordons les thèmes suivants : 1/ les manipulations des balises HTML 2/ la génération d'un état HTML La génération d'une page HTML est réalisée à partir de données contenues dans une table mémoire.
|
|
Composants (WINDEV) : WD Importation de page HTML
[ + ] Cet exemple illustre comment importer des pages HTML avec les fonctions WLangage. Dans cet exemple, nous abordons deux thèmes principaux : 1/ comment importer un objet présent sur un site Web 2/ comment analyser un fichier HTML Résumé de l'exemple livré avec WINDEV : Cet exemple permet de sauvegarder en local une page HTML présente sur un site Web. Cette page est alors analysée afin d'importer également toutes ses dépendances (images, applets…). Cet exemple n'est pas un aspirateur de site. Il permet uniquement de télécharger des pages une par une. Le principe utilisé dans cet exemple peut également permettre la récupération d'informations dans des pages dont vous connaissez le format. (exemple : récupération quotidienne de cotations boursières)
|
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|