HTML Agility Pack获取所有输入字段

c# html-agility-pack

我在互联网上找到了一些找到所有href标签并将其更改为google.com的代码,但是如何告诉代码找到所有input字段并将自定义文本放在那里?

这是我现在的代码:

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");

请,有人可以帮助我,我似乎无法在互联网上找到任何有关这方面的信息:(。

一般承认的答案

将XPath选择器更改为//input以选择所有输入节点:

foreach (HtmlNode input in doc.DocumentNode.SelectNodes("//input"))
{
    HtmlAttribute att = input.Attributes["value"];
    att.Value = "some text";
}

热门答案

您当前的代码中选择的所有a元件(即具有href属性): "//a[@href]"

您希望它选择所有input元素: "//input"

当然,循环的内部部分需要更改以匹配您要查找的内容。

我建议你阅读XPath



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因