我正在创建一个无头的C#应用程序,我的一个HTML元素看起来像
<input name="SUBMIT-chn.pss" title="Select" class="image selectIcon" type="image" alt="Select" src="docs/pics/select.png">
我的方法看起来像
private void AddInputElement(HtmlNode element)
{
string name = element.GetAttributeValue("name", "");
string value = element.GetAttributeValue("value", "");
string type = element.GetAttributeValue("type", "");
if (string.IsNullOrEmpty(name)) return;
switch (type.ToLower())
{
case "image":
'I would like to do something like element.Click to go to the next page.
default:
Add(name, value);
break;
}
}
我正在使用HtmlAgilityPack 1.4.9和.Net 4.5.2
谢谢
答案 0 :(得分:1)
HtmlAgilityPack(HAP)是这类任务的错误工具。它只是一个HTML解析器,它使您能够从源HTML中提取信息,修改HTML的一些内容,等等。 HAP适用于HTML标记级别,您无法通过HAP与HTML控件进行交互。
要点击链接,键入文本框等,您需要一个真实的浏览器或模拟真实浏览器的东西。您可能希望使用Selenium WebDriver无头浏览器来查看PhantomJS的.NET绑定来实现此目的。请参阅一个简单示例here。