.net 使用HtmlAlityPack自动单击按钮
我想自动单击网页上的按钮。我正在使用.net 使用HtmlAlityPack自动单击按钮,.net,.net,我想自动单击网页上的按钮。我正在使用HtmlAgilityPack。我可以用按钮的Xpath。但我无法触发按钮的单击事件。我该怎么做?请提供帮助。Html Agility Pack不应用于模拟点击按钮。它仅用于解析HTML。如果要发送HTTP请求,可以使用。查看以下答案: 他正在创建一个HtmleElement对象(通过xPath或任何其他方式),然后使用以下代码“调用”click事件: htmlItem.InvokeMember("click"); 我尝试了使用HAP,但没有找到点击输入按钮
HtmlAgilityPack
。我可以用按钮的Xpath。但我无法触发按钮的单击事件。我该怎么做?请提供帮助。Html Agility Pack不应用于模拟点击按钮。它仅用于解析HTML。如果要发送HTTP请求,可以使用。查看以下答案:
他正在创建一个HtmleElement对象(通过xPath或任何其他方式),然后使用以下代码“调用”click事件:
htmlItem.InvokeMember("click");
我尝试了使用HAP,但没有找到点击输入按钮的解决方案。 我使用了simplebrowser,它像魔术一样工作来实现这一点
一个有点慢的选项,但它可以工作:
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");
这可以改进,但可以使用两种不同的方法来实现相同的目标。您能举例说明我可以使用什么方法来模拟自动点击吗?如果我正确理解Darin,您可以使用
WebClient
类来模拟按钮点击,因为按钮点击会导致打包数据,然后用JSON或其他格式包含的相关数据执行POST。但如果目标网站检查主机url或验证来自同一域的请求,webClient方法可能会失败。。