我想自动点击网页上的按钮。我正在使用HtmlAgilityPack
。我可以按下按钮的Xpath。但我无法触发按钮的click事件。我怎样才能做到这一点?请帮忙。
答案 0 :(得分:7)
Html Agility Pack不应该用于模拟按钮上的点击。它仅用于解析HTML。如果您要发送HTTP请求,可以使用WebClient。
答案 1 :(得分:3)
查看以下答案:How to click a link element programmatially with HTMLElement?
他正在创建一个HtmlElement对象(通过xPath或任何其他方式),然后使用代码“调用”click事件:
htmlItem.InvokeMember("click");
答案 2 :(得分:0)
我尝试使用HAP,但无法找到单击输入按钮的解决方案。 我使用了简单的浏览器,它可以像魔术一样实现这一目标。
答案 3 :(得分:0)
这个选项有点慢,但是可以用:
HtmlAgilityPack.HtmlNodeCollection ExpanderButtonNodes = Document.DocumentNode.SelectNodes("//div[@class='cd-expand-button']");
if (ExpanderButtonNodes != null)
foreach (HtmlAgilityPack.HtmlNode Node in ExpanderButtonNodes)
foreach (HtmlElement Element in webBrowser1.Document.GetElementsByTagName("div"))
if (Element.InnerText != null && Node.InnerText.Length > 0 && Element.InnerText.Contains(Node.InnerText))
Element.InvokeMember("click");
可以对此进行改进,但可以通过两种不同的方式来达到同一目的。