DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion des fichiers HTML
  • 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
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
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.
Exemple
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
Déclaration

Déclarer un noeud Masquer les détails

MaVariable est un htmlNoeud
Pour décrire un noeud HTML, le nom du noeud peut ensuite être spécifié par la propriété NomBalise.

Créer un noeud HTML Masquer les détails

MaVariable est un htmlNoeud (<Nom balise>)
<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
AttributTableau de htmlAttributAttributs pour un noeud de type htmlNoeudElément.
ExisteBooléen
  • Vrai si le noeud existe réellement dans le document,
  • Faux dans le cas contraire.
Cette propriété est disponible en lecture seulement.
HTMLExterneChaîne de caractèresCode HTML incluant le noeud courant (sous-noeud compris).
Cette propriété est disponible en lecture seulement.
HTMLInterneChaîne de caractèresCode HTML des sous-noeuds dans le noeud courant.
IndiceEntierIndice du noeud dans son parent.
Cette propriété est disponible en lecture seulement.
NoeudFilsTableau de variables de type htmlNoeudNoeuds fils pour un noeud de type htmlNoeudElément.
NomBaliseChaîne de caractèresNom de la balise si le noeud est de type htmlNoeudElément, chaîne vide ("") dans les autres cas.
OccurrenceEntierNombre d'éléments de même nom.
Cette propriété est disponible en lecture seulement.
ParentVariable de type htmlNoeudNoeud parent, NULL si le noeud est la racine.
Cette propriété est disponible en lecture seulement.
TexteChaîne de caractèresContenu 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.
TypeConstante de type EntierType 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.

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

Liste des exemples associés :
Le Type HTMLDocument Exemples unitaires (WINDEV) : Le Type HTMLDocument
[ + ] Cet exemple permet de montrer comment utiliser le Type WLangage HTMLDocument.
WD Export HTML 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.
WD Importation de page HTML 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)
Version minimum requise
  • Version 26
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 15/03/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale