J'ai trouvé du code sur Internet qui trouve toutes les balises href
et les remplace par google.com, mais comment puis-je indiquer au code de rechercher tous les champs de input
et d'y insérer du texte personnalisé?
C'est le code que j'ai en ce moment:
HtmlDocument doc = new HtmlDocument();
doc.Load(path);
foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]"))
{
HtmlAttribute att = link.Attributes["href"];
att.Value = "http://www.google.com";
}
doc.Save("file.htm");
S'il vous plaît, quelqu'un peut m'aider, je ne semble pas pouvoir trouver aucune information à ce sujet sur Internet :(.
Définissez le sélecteur XPath sur //input
pour sélectionner tous les nœuds d'entrée:
foreach (HtmlNode input in doc.DocumentNode.SelectNodes("//input"))
{
HtmlAttribute att = input.Attributes["value"];
att.Value = "some text";
}
Votre code actuel sélectionné tous a
des éléments (qui ont un href
attribut): "//a[@href]"
.
Vous voulez qu'il sélectionne tous input
éléments d' input
: "//input"
.
Bien entendu, la partie interne de la boucle devra être modifiée pour correspondre à ce que vous recherchez.
Je vous suggère de lire sur XPath .